diff --git a/CHANGELOG.md b/CHANGELOG.md index ea8b7aba..c67c1074 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +## v2.8.0 +Target azurerm version: v4.54.0 + ## v2.7.0 Target azurerm version: v4.44.0 diff --git a/azurerm/schema/provider_gen.go b/azurerm/schema/provider_gen.go index c2ac2d94..7382101f 100644 --- a/azurerm/schema/provider_gen.go +++ b/azurerm/schema/provider_gen.go @@ -7,12 +7,12 @@ import ( "os" ) -var ProviderVersion = "tags/v4.44.0" +var ProviderVersion = "tags/v4.54.0" var ProviderSchemaInfo ProviderSchema func init() { - b := []byte(`{"Version":"","resource_schemas":{"azurerm_aadb2c_directory":{"block":{"attributes":{"billing_type":{"type":"string","computed":true},"country_code":{"type":"string","optional":true,"computed":true},"data_residency_location":{"type":"string","required":true},"display_name":{"type":"string","optional":true,"computed":true},"domain_name":{"type":"string","required":true},"effective_start_date":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","computed":true}}}},"azurerm_active_directory_domain_service":{"block":{"attributes":{"deployment_id":{"type":"string","computed":true},"domain_configuration_type":{"type":"string","optional":true},"domain_name":{"type":"string","required":true},"filtered_sync_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_id":{"type":"string","computed":true},"sku":{"type":"string","required":true},"sync_owner":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","computed":true},"version":{"type":"number","computed":true}},"block_types":{"initial_replica_set":{"nesting_mode":3,"block":{"attributes":{"domain_controller_ip_addresses":{"type":["list","string"],"computed":true},"external_access_ip_address":{"type":"string","computed":true},"id":{"type":"string","computed":true},"location":{"type":"string","computed":true},"service_status":{"type":"string","computed":true},"subnet_id":{"type":"string","required":true}}},"required":true},"notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true},"notify_dc_admins":{"type":"bool","optional":true,"default":false},"notify_global_admins":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true},"secure_ldap":{"nesting_mode":3,"block":{"attributes":{"certificate_expiry":{"type":"string","computed":true},"certificate_thumbprint":{"type":"string","computed":true},"enabled":{"type":"bool","required":true},"external_access_enabled":{"type":"bool","optional":true,"default":false},"pfx_certificate":{"type":"string","required":true},"pfx_certificate_password":{"type":"string","required":true},"public_certificate":{"type":"string","computed":true}}},"optional":true,"computed":true},"security":{"nesting_mode":3,"block":{"attributes":{"kerberos_armoring_enabled":{"type":"bool","optional":true,"default":false},"kerberos_rc4_encryption_enabled":{"type":"bool","optional":true,"default":false},"ntlm_v1_enabled":{"type":"bool","optional":true,"default":false},"sync_kerberos_passwords":{"type":"bool","optional":true,"default":false},"sync_ntlm_passwords":{"type":"bool","optional":true,"default":false},"sync_on_prem_passwords":{"type":"bool","optional":true,"default":false},"tls_v1_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_active_directory_domain_service_replica_set":{"block":{"attributes":{"domain_controller_ip_addresses":{"type":["list","string"],"computed":true},"domain_service_id":{"type":"string","required":true},"external_access_ip_address":{"type":"string","computed":true},"location":{"type":"string","required":true},"service_status":{"type":"string","computed":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_active_directory_domain_service_trust":{"block":{"attributes":{"domain_service_id":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"trusted_domain_dns_ips":{"type":["list","string"],"required":true},"trusted_domain_fqdn":{"type":"string","required":true}}}},"azurerm_advanced_threat_protection":{"block":{"attributes":{"enabled":{"type":"bool","required":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_advisor_suppression":{"block":{"attributes":{"name":{"type":"string","required":true},"recommendation_id":{"type":"string","required":true},"resource_id":{"type":"string","required":true},"suppression_id":{"type":"string","computed":true},"ttl":{"type":"string","optional":true}}}},"azurerm_ai_foundry":{"block":{"attributes":{"application_insights_id":{"type":"string","optional":true},"container_registry_id":{"type":"string","optional":true},"description":{"type":"string","optional":true},"discovery_url":{"type":"string","computed":true},"friendly_name":{"type":"string","optional":true},"high_business_impact_enabled":{"type":"bool","optional":true,"computed":true},"key_vault_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_user_assigned_identity":{"type":"string","optional":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","computed":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"key_id":{"type":"string","required":true},"key_vault_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true},"managed_network":{"nesting_mode":3,"block":{"attributes":{"isolation_mode":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_ai_foundry_project":{"block":{"attributes":{"ai_services_hub_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true},"high_business_impact_enabled":{"type":"bool","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_user_assigned_identity":{"type":"string","optional":true,"required_with":["identity"]},"project_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_ai_services":{"block":{"attributes":{"custom_subdomain_name":{"type":"string","optional":true},"endpoint":{"type":"string","computed":true},"fqdns":{"type":["list","string"],"optional":true},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_network_access_restricted":{"type":"bool","optional":true,"default":false},"primary_access_key":{"type":"string","computed":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","optional":true,"exactly_one_of":["customer_managed_key.0.managed_hsm_key_id","customer_managed_key.0.key_vault_key_id"]},"managed_hsm_key_id":{"type":"string","optional":true,"exactly_one_of":["customer_managed_key.0.managed_hsm_key_id","customer_managed_key.0.key_vault_key_id"]}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_acls":{"nesting_mode":3,"block":{"attributes":{"bypass":{"type":"string","optional":true,"default":"AzureServices"},"default_action":{"type":"string","required":true},"ip_rules":{"type":["set","string"],"optional":true}},"block_types":{"virtual_network_rules":{"nesting_mode":4,"block":{"attributes":{"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"required_with":["custom_subdomain_name"]},"storage":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"storage_account_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_analysis_services_server":{"block":{"attributes":{"admin_users":{"type":["set","string"],"optional":true},"backup_blob_container_uri":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"power_bi_service_enabled":{"type":"bool","optional":true},"querypool_connection_mode":{"type":"string","optional":true,"default":"All"},"resource_group_name":{"type":"string","required":true},"server_full_name":{"type":"string","computed":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ipv4_firewall_rule":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"range_end":{"type":"string","required":true},"range_start":{"type":"string","required":true}}},"optional":true}}}},"azurerm_api_connection":{"block":{"attributes":{"display_name":{"type":"string","optional":true,"computed":true},"managed_api_id":{"type":"string","required":true},"name":{"type":"string","required":true},"parameter_values":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_api_management":{"block":{"attributes":{"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"developer_portal_url":{"type":"string","computed":true},"gateway_disabled":{"type":"bool","optional":true,"default":false},"gateway_regional_url":{"type":"string","computed":true},"gateway_url":{"type":"string","computed":true},"location":{"type":"string","required":true},"management_api_url":{"type":"string","computed":true},"min_api_version":{"type":"string","optional":true},"name":{"type":"string","required":true},"notification_sender_email":{"type":"string","optional":true,"computed":true},"portal_url":{"type":"string","computed":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_address_id":{"type":"string","optional":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"publisher_email":{"type":"string","required":true},"publisher_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scm_url":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_type":{"type":"string","optional":true,"default":"None"},"zones":{"type":["set","string"],"optional":true}},"block_types":{"additional_location":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"computed":true},"gateway_disabled":{"type":"bool","optional":true,"default":false},"gateway_regional_url":{"type":"string","computed":true},"location":{"type":"string","required":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_address_id":{"type":"string","optional":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"virtual_network_configuration":{"nesting_mode":3,"block":{"attributes":{"subnet_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"certificate":{"nesting_mode":3,"block":{"attributes":{"certificate_password":{"type":"string","optional":true},"encoded_certificate":{"type":"string","required":true},"expiry":{"type":"string","computed":true},"store_name":{"type":"string","required":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true},"delegation":{"nesting_mode":3,"block":{"attributes":{"subscriptions_enabled":{"type":"bool","optional":true,"default":false},"url":{"type":"string","optional":true},"user_registration_enabled":{"type":"bool","optional":true,"default":false},"validation_key":{"type":"string","optional":true}}},"optional":true,"computed":true},"hostname_configuration":{"nesting_mode":3,"block":{"block_types":{"developer_portal":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["hostname_configuration.0.management","hostname_configuration.0.portal","hostname_configuration.0.developer_portal","hostname_configuration.0.proxy","hostname_configuration.0.scm"]},"management":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["hostname_configuration.0.management","hostname_configuration.0.portal","hostname_configuration.0.developer_portal","hostname_configuration.0.proxy","hostname_configuration.0.scm"]},"portal":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["hostname_configuration.0.management","hostname_configuration.0.portal","hostname_configuration.0.developer_portal","hostname_configuration.0.proxy","hostname_configuration.0.scm"]},"proxy":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"default_ssl_binding":{"type":"bool","optional":true,"computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["hostname_configuration.0.management","hostname_configuration.0.portal","hostname_configuration.0.developer_portal","hostname_configuration.0.proxy","hostname_configuration.0.scm"]},"scm":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["hostname_configuration.0.management","hostname_configuration.0.portal","hostname_configuration.0.developer_portal","hostname_configuration.0.proxy","hostname_configuration.0.scm"]}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"protocols":{"nesting_mode":3,"block":{"attributes":{"enable_http2":{"type":"bool","optional":true,"computed":true,"conflicts_with":["protocols.0.http2_enabled"]},"http2_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["protocols.0.enable_http2"]}}},"optional":true,"computed":true},"security":{"nesting_mode":3,"block":{"attributes":{"backend_ssl30_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_backend_ssl30"]},"backend_tls10_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_backend_tls10"]},"backend_tls11_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_backend_tls11"]},"enable_backend_ssl30":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.backend_ssl30_enabled"]},"enable_backend_tls10":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.backend_tls10_enabled"]},"enable_backend_tls11":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.backend_tls11_enabled"]},"enable_frontend_ssl30":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.frontend_ssl30_enabled"]},"enable_frontend_tls10":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.frontend_tls10_enabled"]},"enable_frontend_tls11":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.frontend_tls11_enabled"]},"frontend_ssl30_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_frontend_ssl30"]},"frontend_tls10_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_frontend_tls10"]},"frontend_tls11_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_frontend_tls11"]},"tls_ecdhe_ecdsa_with_aes128_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_ecdhe_ecdsa_with_aes256_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_ecdhe_rsa_with_aes128_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_ecdhe_rsa_with_aes256_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes128_cbc_sha256_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes128_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes128_gcm_sha256_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes256_cbc_sha256_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes256_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes256_gcm_sha384_ciphers_enabled":{"type":"bool","optional":true,"default":false},"triple_des_ciphers_enabled":{"type":"bool","optional":true}}},"optional":true,"computed":true},"sign_in":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true}}},"optional":true,"computed":true},"sign_up":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true}},"block_types":{"terms_of_service":{"nesting_mode":3,"block":{"attributes":{"consent_required":{"type":"bool","required":true},"enabled":{"type":"bool","required":true},"text":{"type":"string","optional":true}}},"required":true}}},"optional":true,"computed":true},"tenant_access":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"primary_key":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true}}},"optional":true,"computed":true},"virtual_network_configuration":{"nesting_mode":3,"block":{"attributes":{"subnet_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_api_management_api":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_type":{"type":"string","optional":true,"computed":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true,"computed":true},"is_current":{"type":"bool","computed":true},"is_online":{"type":"bool","computed":true},"name":{"type":"string","required":true},"path":{"type":"string","optional":true,"computed":true},"protocols":{"type":["set","string"],"optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"revision":{"type":"string","required":true},"revision_description":{"type":"string","optional":true},"service_url":{"type":"string","optional":true,"computed":true},"source_api_id":{"type":"string","optional":true},"subscription_required":{"type":"bool","optional":true,"default":true},"terms_of_service_url":{"type":"string","optional":true},"version":{"type":"string","optional":true,"computed":true},"version_description":{"type":"string","optional":true},"version_set_id":{"type":"string","optional":true,"computed":true}},"block_types":{"contact":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","optional":true},"name":{"type":"string","optional":true},"url":{"type":"string","optional":true}}},"optional":true},"import":{"nesting_mode":3,"block":{"attributes":{"content_format":{"type":"string","required":true},"content_value":{"type":"string","required":true}},"block_types":{"wsdl_selector":{"nesting_mode":3,"block":{"attributes":{"endpoint_name":{"type":"string","required":true},"service_name":{"type":"string","required":true}}},"optional":true}}},"optional":true},"license":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true},"url":{"type":"string","optional":true}}},"optional":true},"oauth2_authorization":{"nesting_mode":3,"block":{"attributes":{"authorization_server_name":{"type":"string","required":true},"scope":{"type":"string","optional":true}}},"optional":true,"conflicts_with":["openid_authentication"]},"openid_authentication":{"nesting_mode":3,"block":{"attributes":{"bearer_token_sending_methods":{"type":["set","string"],"optional":true},"openid_provider_name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["oauth2_authorization"]},"subscription_key_parameter_names":{"nesting_mode":3,"block":{"attributes":{"header":{"type":"string","required":true},"query":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_api_management_api_diagnostic":{"block":{"attributes":{"always_log_errors":{"type":"bool","optional":true,"computed":true},"api_management_logger_id":{"type":"string","required":true},"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"http_correlation_protocol":{"type":"string","optional":true,"computed":true},"identifier":{"type":"string","required":true},"log_client_ip":{"type":"bool","optional":true,"computed":true},"operation_name_format":{"type":"string","optional":true,"default":"Name"},"resource_group_name":{"type":"string","required":true},"sampling_percentage":{"type":"number","optional":true,"computed":true},"verbosity":{"type":"string","optional":true,"computed":true}},"block_types":{"backend_request":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"backend_response":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"frontend_request":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"frontend_response":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_api_management_api_operation":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"method":{"type":"string","required":true},"operation_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"url_template":{"type":"string","required":true}},"block_types":{"request":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"query_parameter":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"representation":{"nesting_mode":3,"block":{"attributes":{"content_type":{"type":"string","required":true},"schema_id":{"type":"string","optional":true},"type_name":{"type":"string","optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"form_parameter":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"response":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"status_code":{"type":"number","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"representation":{"nesting_mode":3,"block":{"attributes":{"content_type":{"type":"string","required":true},"schema_id":{"type":"string","optional":true},"type_name":{"type":"string","optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"form_parameter":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}},"optional":true},"template_parameter":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_api_management_api_operation_policy":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"operation_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"xml_content":{"type":"string","optional":true,"computed":true,"conflicts_with":["xml_link"]},"xml_link":{"type":"string","optional":true,"conflicts_with":["xml_content"]}}}},"azurerm_api_management_api_operation_tag":{"block":{"attributes":{"api_operation_id":{"type":"string","required":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_api_management_api_policy":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"xml_content":{"type":"string","optional":true,"computed":true,"conflicts_with":["xml_link"]},"xml_link":{"type":"string","optional":true,"conflicts_with":["xml_content"]}}}},"azurerm_api_management_api_release":{"block":{"attributes":{"api_id":{"type":"string","required":true},"name":{"type":"string","required":true},"notes":{"type":"string","optional":true}}}},"azurerm_api_management_api_schema":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"components":{"type":"string","optional":true,"exactly_one_of":["value","definitions","components"]},"content_type":{"type":"string","required":true},"definitions":{"type":"string","optional":true,"exactly_one_of":["value","definitions","components"]},"resource_group_name":{"type":"string","required":true},"schema_id":{"type":"string","required":true},"value":{"type":"string","optional":true,"exactly_one_of":["value","definitions","components"]}}}},"azurerm_api_management_api_tag":{"block":{"attributes":{"api_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_api_management_api_tag_description":{"block":{"attributes":{"api_tag_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"external_documentation_description":{"type":"string","optional":true},"external_documentation_url":{"type":"string","optional":true}}}},"azurerm_api_management_api_version_set":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"version_header_name":{"type":"string","optional":true,"conflicts_with":["version_query_name"]},"version_query_name":{"type":"string","optional":true,"conflicts_with":["version_header_name"]},"versioning_scheme":{"type":"string","required":true}}}},"azurerm_api_management_authorization_server":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"authorization_endpoint":{"type":"string","required":true},"authorization_methods":{"type":["set","string"],"required":true},"bearer_token_sending_methods":{"type":["set","string"],"optional":true},"client_authentication_method":{"type":["set","string"],"optional":true},"client_id":{"type":"string","required":true},"client_registration_endpoint":{"type":"string","required":true},"client_secret":{"type":"string","optional":true},"default_scope":{"type":"string","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"grant_types":{"type":["set","string"],"required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_owner_password":{"type":"string","optional":true},"resource_owner_username":{"type":"string","optional":true},"support_state":{"type":"bool","optional":true},"token_endpoint":{"type":"string","optional":true}},"block_types":{"token_body_parameter":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}}},"azurerm_api_management_backend":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_id":{"type":"string","optional":true},"title":{"type":"string","optional":true},"url":{"type":"string","required":true}},"block_types":{"credentials":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":["list","string"],"optional":true,"at_least_one_of":["credentials.0.authorization","credentials.0.certificate","credentials.0.header","credentials.0.query"]},"header":{"type":["map","string"],"optional":true,"at_least_one_of":["credentials.0.authorization","credentials.0.certificate","credentials.0.header","credentials.0.query"]},"query":{"type":["map","string"],"optional":true,"at_least_one_of":["credentials.0.authorization","credentials.0.certificate","credentials.0.header","credentials.0.query"]}},"block_types":{"authorization":{"nesting_mode":3,"block":{"attributes":{"parameter":{"type":"string","optional":true,"at_least_one_of":["credentials.0.authorization.0.parameter","credentials.0.authorization.0.scheme"]},"scheme":{"type":"string","optional":true,"at_least_one_of":["credentials.0.authorization.0.parameter","credentials.0.authorization.0.scheme"]}}},"optional":true,"at_least_one_of":["credentials.0.authorization","credentials.0.certificate","credentials.0.header","credentials.0.query"]}}},"optional":true},"proxy":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"url":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"service_fabric_cluster":{"nesting_mode":3,"block":{"attributes":{"client_certificate_id":{"type":"string","optional":true,"computed":true},"client_certificate_thumbprint":{"type":"string","optional":true,"computed":true},"management_endpoints":{"type":["set","string"],"required":true},"max_partition_resolution_retries":{"type":"number","required":true},"server_certificate_thumbprints":{"type":["set","string"],"optional":true,"conflicts_with":["service_fabric_cluster.0.server_x509_name"]}},"block_types":{"server_x509_name":{"nesting_mode":4,"block":{"attributes":{"issuer_certificate_thumbprint":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["service_fabric_cluster.0.server_certificate_thumbprints"]}}},"optional":true},"tls":{"nesting_mode":3,"block":{"attributes":{"validate_certificate_chain":{"type":"bool","optional":true,"at_least_one_of":["tls.0.validate_certificate_chain","tls.0.validate_certificate_name"]},"validate_certificate_name":{"type":"bool","optional":true,"at_least_one_of":["tls.0.validate_certificate_chain","tls.0.validate_certificate_name"]}}},"optional":true}}}},"azurerm_api_management_certificate":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"data":{"type":"string","optional":true,"conflicts_with":["key_vault_secret_id","key_vault_identity_client_id"],"at_least_one_of":["data","key_vault_secret_id"]},"expiration":{"type":"string","computed":true},"key_vault_identity_client_id":{"type":"string","optional":true,"required_with":["key_vault_secret_id"]},"key_vault_secret_id":{"type":"string","optional":true,"conflicts_with":["data","password"],"at_least_one_of":["data","key_vault_secret_id"]},"name":{"type":"string","required":true},"password":{"type":"string","optional":true,"required_with":["data"]},"resource_group_name":{"type":"string","required":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_api_management_custom_domain":{"block":{"attributes":{"api_management_id":{"type":"string","required":true}},"block_types":{"developer_portal":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["management","portal","developer_portal","gateway","scm"]},"gateway":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"default_ssl_binding":{"type":"bool","optional":true,"computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["management","portal","developer_portal","gateway","scm"]},"management":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["management","portal","developer_portal","gateway","scm"]},"portal":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["management","portal","developer_portal","gateway","scm"]},"scm":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["management","portal","developer_portal","gateway","scm"]}}}},"azurerm_api_management_diagnostic":{"block":{"attributes":{"always_log_errors":{"type":"bool","optional":true,"computed":true},"api_management_logger_id":{"type":"string","required":true},"api_management_name":{"type":"string","required":true},"http_correlation_protocol":{"type":"string","optional":true,"computed":true},"identifier":{"type":"string","required":true},"log_client_ip":{"type":"bool","optional":true,"computed":true},"operation_name_format":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"sampling_percentage":{"type":"number","optional":true,"computed":true},"verbosity":{"type":"string","optional":true,"computed":true}},"block_types":{"backend_request":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"backend_response":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"frontend_request":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"frontend_response":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_api_management_email_template":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"body":{"type":"string","required":true},"description":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"subject":{"type":"string","required":true},"template_name":{"type":"string","required":true},"title":{"type":"string","computed":true}}}},"azurerm_api_management_gateway":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"location_data":{"nesting_mode":3,"block":{"attributes":{"city":{"type":"string","optional":true},"district":{"type":"string","optional":true},"name":{"type":"string","required":true},"region":{"type":"string","optional":true}}},"required":true}}}},"azurerm_api_management_gateway_api":{"block":{"attributes":{"api_id":{"type":"string","required":true},"gateway_id":{"type":"string","required":true}}}},"azurerm_api_management_gateway_certificate_authority":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"certificate_name":{"type":"string","required":true},"gateway_name":{"type":"string","required":true},"is_trusted":{"type":"bool","optional":true}}}},"azurerm_api_management_gateway_host_name_configuration":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"certificate_id":{"type":"string","required":true},"gateway_name":{"type":"string","required":true},"host_name":{"type":"string","required":true},"http2_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"request_client_certificate_enabled":{"type":"bool","optional":true},"tls10_enabled":{"type":"bool","optional":true},"tls11_enabled":{"type":"bool","optional":true}}}},"azurerm_api_management_global_schema":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"schema_id":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_api_management_group":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"external_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"type":{"type":"string","optional":true,"default":"custom"}}}},"azurerm_api_management_group_user":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"group_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"user_id":{"type":"string","required":true}}}},"azurerm_api_management_identity_provider_aad":{"block":{"attributes":{"allowed_tenants":{"type":["list","string"],"required":true},"api_management_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_library":{"type":"string","optional":true},"client_secret":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"signin_tenant":{"type":"string","optional":true}}}},"azurerm_api_management_identity_provider_aadb2c":{"block":{"attributes":{"allowed_tenant":{"type":"string","required":true},"api_management_name":{"type":"string","required":true},"authority":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_library":{"type":"string","optional":true},"client_secret":{"type":"string","required":true},"password_reset_policy":{"type":"string","optional":true},"profile_editing_policy":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"signin_policy":{"type":"string","required":true},"signin_tenant":{"type":"string","required":true},"signup_policy":{"type":"string","required":true}}}},"azurerm_api_management_identity_provider_facebook":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"app_id":{"type":"string","required":true},"app_secret":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_identity_provider_google":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_identity_provider_microsoft":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_identity_provider_twitter":{"block":{"attributes":{"api_key":{"type":"string","required":true},"api_management_name":{"type":"string","required":true},"api_secret_key":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_logger":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"buffered":{"type":"bool","optional":true,"default":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_id":{"type":"string","optional":true}},"block_types":{"application_insights":{"nesting_mode":3,"block":{"attributes":{"connection_string":{"type":"string","optional":true,"conflicts_with":["application_insights.0.instrumentation_key"],"at_least_one_of":["application_insights.0.connection_string","application_insights.0.instrumentation_key"]},"instrumentation_key":{"type":"string","optional":true,"conflicts_with":["application_insights.0.connection_string"],"at_least_one_of":["application_insights.0.connection_string","application_insights.0.instrumentation_key"]}}},"optional":true,"conflicts_with":["eventhub"]},"eventhub":{"nesting_mode":3,"block":{"attributes":{"connection_string":{"type":"string","optional":true,"conflicts_with":["eventhub.0.endpoint_uri","eventhub.0.user_assigned_identity_client_id"],"at_least_one_of":["eventhub.0.connection_string","eventhub.0.endpoint_uri"]},"endpoint_uri":{"type":"string","optional":true,"conflicts_with":["eventhub.0.connection_string"],"at_least_one_of":["eventhub.0.connection_string","eventhub.0.endpoint_uri"]},"name":{"type":"string","required":true},"user_assigned_identity_client_id":{"type":"string","optional":true,"conflicts_with":["eventhub.0.connection_string"]}}},"optional":true,"conflicts_with":["application_insights"]}}}},"azurerm_api_management_named_value":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"secret":{"type":"bool","optional":true,"default":false},"tags":{"type":["list","string"],"optional":true},"value":{"type":"string","optional":true,"exactly_one_of":["value","value_from_key_vault"]}},"block_types":{"value_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"secret_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["value","value_from_key_vault"],"required_with":["secret"]}}}},"azurerm_api_management_notification_recipient_email":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"email":{"type":"string","required":true},"notification_type":{"type":"string","required":true}}}},"azurerm_api_management_notification_recipient_user":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"notification_type":{"type":"string","required":true},"user_id":{"type":"string","required":true}}}},"azurerm_api_management_openid_connect_provider":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"metadata_endpoint":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_policy":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"xml_content":{"type":"string","optional":true,"computed":true,"conflicts_with":["xml_link"],"exactly_one_of":["xml_link","xml_content"]},"xml_link":{"type":"string","optional":true,"conflicts_with":["xml_content"],"exactly_one_of":["xml_link","xml_content"]}}}},"azurerm_api_management_policy_fragment":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"format":{"type":"string","optional":true,"default":"xml"},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_api_management_product":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"approval_required":{"type":"bool","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"product_id":{"type":"string","required":true},"published":{"type":"bool","required":true},"resource_group_name":{"type":"string","required":true},"subscription_required":{"type":"bool","optional":true,"default":true},"subscriptions_limit":{"type":"number","optional":true},"terms":{"type":"string","optional":true}}}},"azurerm_api_management_product_api":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"product_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_product_group":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"group_name":{"type":"string","required":true},"product_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_product_policy":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"product_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"xml_content":{"type":"string","optional":true,"computed":true,"conflicts_with":["xml_link"]},"xml_link":{"type":"string","optional":true,"conflicts_with":["xml_content"]}}}},"azurerm_api_management_product_tag":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_management_product_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_redis_cache":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"cache_location":{"type":"string","optional":true,"default":"default"},"connection_string":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"redis_cache_id":{"type":"string","optional":true}}}},"azurerm_api_management_standalone_gateway":{"block":{"attributes":{"backend_subnet_id":{"type":"string","optional":true,"required_with":["virtual_network_type"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_type":{"type":"string","optional":true,"required_with":["backend_subnet_id"]}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_api_management_subscription":{"block":{"attributes":{"allow_tracing":{"type":"bool","optional":true,"default":true},"api_id":{"type":"string","optional":true,"conflicts_with":["product_id"]},"api_management_name":{"type":"string","required":true},"display_name":{"type":"string","required":true},"primary_key":{"type":"string","optional":true,"computed":true},"product_id":{"type":"string","optional":true,"conflicts_with":["api_id"]},"resource_group_name":{"type":"string","required":true},"secondary_key":{"type":"string","optional":true,"computed":true},"state":{"type":"string","optional":true,"default":"submitted"},"subscription_id":{"type":"string","optional":true,"computed":true},"user_id":{"type":"string","optional":true}}}},"azurerm_api_management_tag":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"display_name":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true}}}},"azurerm_api_management_user":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"confirmation":{"type":"string","optional":true},"email":{"type":"string","required":true},"first_name":{"type":"string","required":true},"last_name":{"type":"string","required":true},"note":{"type":"string","optional":true},"password":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"state":{"type":"string","optional":true,"computed":true},"user_id":{"type":"string","required":true}}}},"azurerm_api_management_workspace":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_app_configuration":{"block":{"attributes":{"data_plane_proxy_authentication_mode":{"type":"string","optional":true,"default":"Local"},"data_plane_proxy_private_link_delegation_enabled":{"type":"bool","optional":true,"default":false},"endpoint":{"type":"string","computed":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_read_key":{"type":["list",["object",{"connection_string":"string","id":"string","secret":"string"}]],"computed":true},"primary_write_key":{"type":["list",["object",{"connection_string":"string","id":"string","secret":"string"}]],"computed":true},"public_network_access":{"type":"string","optional":true},"purge_protection_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"secondary_read_key":{"type":["list",["object",{"connection_string":"string","id":"string","secret":"string"}]],"computed":true},"secondary_write_key":{"type":["list",["object",{"connection_string":"string","id":"string","secret":"string"}]],"computed":true},"sku":{"type":"string","optional":true,"default":"free"},"soft_delete_retention_days":{"type":"number","optional":true,"default":7},"tags":{"type":["map","string"],"optional":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"key_vault_key_identifier":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"replica":{"nesting_mode":4,"block":{"attributes":{"endpoint":{"type":"string","computed":true},"id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_app_configuration_feature":{"block":{"attributes":{"configuration_store_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true},"etag":{"type":"string","optional":true,"computed":true},"key":{"type":"string","optional":true,"computed":true},"label":{"type":"string","optional":true},"locked":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"percentage_filter_value":{"type":"number","optional":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"targeting_filter":{"nesting_mode":3,"block":{"attributes":{"default_rollout_percentage":{"type":"number","required":true},"users":{"type":["list","string"],"optional":true}},"block_types":{"groups":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"rollout_percentage":{"type":"number","required":true}}},"optional":true}}},"optional":true},"timewindow_filter":{"nesting_mode":3,"block":{"attributes":{"end":{"type":"string","optional":true},"start":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_app_configuration_key":{"block":{"attributes":{"configuration_store_id":{"type":"string","required":true},"content_type":{"type":"string","optional":true,"computed":true},"etag":{"type":"string","optional":true,"computed":true},"key":{"type":"string","required":true},"label":{"type":"string","optional":true},"locked":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","optional":true,"default":"kv"},"value":{"type":"string","optional":true,"conflicts_with":["vault_key_reference"]},"vault_key_reference":{"type":"string","optional":true,"conflicts_with":["value"]}}}},"azurerm_app_service":{"block":{"attributes":{"app_service_plan_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true,"computed":true},"client_affinity_enabled":{"type":"bool","optional":true,"default":false},"client_cert_enabled":{"type":"bool","optional":true,"default":false},"client_cert_mode":{"type":"string","optional":true,"computed":true},"custom_domain_verification_id":{"type":"string","computed":true},"default_site_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"password":"string","username":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_params":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"default_provider":{"type":"string","optional":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"retention_period_in_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages_enabled":{"type":"bool","optional":true,"default":false},"failed_request_tracing_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","optional":true,"default":"Off"}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"],"at_least_one_of":["logs.0.http_logs.0.azure_blob_storage","logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"],"at_least_one_of":["logs.0.http_logs.0.azure_blob_storage","logs.0.http_logs.0.file_system"]}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"acr_use_managed_identity_credentials":{"type":"bool","optional":true,"default":false},"acr_user_managed_identity_client_id":{"type":"string","optional":true},"always_on":{"type":"bool","optional":true,"default":false},"app_command_line":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"default_documents":{"type":["list","string"],"optional":true},"dotnet_framework_version":{"type":"string","optional":true,"default":"v4.0"},"ftps_state":{"type":"string","optional":true,"computed":true},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"java_container":{"type":"string","optional":true},"java_container_version":{"type":"string","optional":true},"java_version":{"type":"string","optional":true},"linux_fx_version":{"type":"string","optional":true,"computed":true},"local_mysql_enabled":{"type":"bool","optional":true,"computed":true},"managed_pipeline_mode":{"type":"string","optional":true,"computed":true},"min_tls_version":{"type":"string","optional":true,"computed":true},"number_of_workers":{"type":"number","optional":true,"computed":true},"php_version":{"type":"string","optional":true},"python_version":{"type":"string","optional":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"scm_type":{"type":"string","optional":true,"computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker_process":{"type":"bool","optional":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"computed":true},"websockets_enabled":{"type":"bool","optional":true,"computed":true},"windows_fx_version":{"type":"string","optional":true,"computed":true}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"required":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"source_control":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"manual_integration":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"repo_url":{"type":"string","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"rollback_enabled":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"use_mercurial":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]}}},"optional":true,"computed":true,"conflicts_with":["site_config.0.scm_type"]},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_app_service_active_slot":{"block":{"attributes":{"app_service_name":{"type":"string","required":true},"app_service_slot_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_app_service_certificate":{"block":{"attributes":{"app_service_plan_id":{"type":"string","optional":true},"expiration_date":{"type":"string","computed":true},"friendly_name":{"type":"string","computed":true},"host_names":{"type":["list","string"],"computed":true},"hosting_environment_profile_id":{"type":"string","computed":true},"issue_date":{"type":"string","computed":true},"issuer":{"type":"string","computed":true},"key_vault_id":{"type":"string","optional":true,"required_with":["key_vault_secret_id"]},"key_vault_secret_id":{"type":"string","optional":true,"conflicts_with":["pfx_blob","password"],"exactly_one_of":["key_vault_secret_id","pfx_blob"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"pfx_blob":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"subject_name":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_app_service_certificate_binding":{"block":{"attributes":{"app_service_name":{"type":"string","computed":true},"certificate_id":{"type":"string","required":true},"hostname":{"type":"string","computed":true},"hostname_binding_id":{"type":"string","required":true},"ssl_state":{"type":"string","required":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_app_service_certificate_order":{"block":{"attributes":{"app_service_certificate_not_renewable_reasons":{"type":["list","string"],"computed":true},"auto_renew":{"type":"bool","optional":true,"default":true},"certificates":{"type":["list",["object",{"certificate_name":"string","key_vault_id":"string","key_vault_secret_name":"string","provisioning_state":"string"}]],"computed":true},"csr":{"type":"string","optional":true,"computed":true,"conflicts_with":["distinguished_name"]},"distinguished_name":{"type":"string","optional":true,"computed":true,"conflicts_with":["csr"]},"domain_verification_token":{"type":"string","computed":true},"expiration_time":{"type":"string","computed":true},"intermediate_thumbprint":{"type":"string","computed":true},"is_private_key_external":{"type":"bool","computed":true},"key_size":{"type":"number","optional":true,"default":2048},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"product_type":{"type":"string","optional":true,"default":"Standard"},"resource_group_name":{"type":"string","required":true},"root_thumbprint":{"type":"string","computed":true},"signed_certificate_thumbprint":{"type":"string","computed":true},"status":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"validity_in_years":{"type":"number","optional":true,"default":1}}}},"azurerm_app_service_connection":{"block":{"attributes":{"app_service_id":{"type":"string","required":true},"client_type":{"type":"string","optional":true,"default":"none"},"name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"vnet_solution":{"type":"string","optional":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"client_id":{"type":"string","optional":true},"name":{"type":"string","optional":true},"principal_id":{"type":"string","optional":true},"secret":{"type":"string","optional":true},"subscription_id":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true},"secret_store":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_app_service_custom_hostname_binding":{"block":{"attributes":{"app_service_name":{"type":"string","required":true},"hostname":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssl_state":{"type":"string","optional":true,"computed":true},"thumbprint":{"type":"string","optional":true,"computed":true},"virtual_ip":{"type":"string","computed":true}}}},"azurerm_app_service_environment_v3":{"block":{"attributes":{"allow_new_private_endpoint_connections":{"type":"bool","optional":true,"default":true},"dedicated_host_count":{"type":"number","optional":true,"conflicts_with":["zone_redundant"]},"dns_suffix":{"type":"string","computed":true},"external_inbound_ip_addresses":{"type":["list","string"],"computed":true},"inbound_network_dependencies":{"type":["list",["object",{"description":"string","ip_addresses":["list","string"],"ports":["list","string"]}]],"computed":true},"internal_inbound_ip_addresses":{"type":["list","string"],"computed":true},"internal_load_balancing_mode":{"type":"string","optional":true,"default":"None"},"ip_ssl_address_count":{"type":"number","computed":true},"linux_outbound_ip_addresses":{"type":["list","string"],"computed":true},"location":{"type":"string","computed":true},"name":{"type":"string","required":true},"pricing_tier":{"type":"string","computed":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"windows_outbound_ip_addresses":{"type":["list","string"],"computed":true},"zone_redundant":{"type":"bool","optional":true,"default":false,"conflicts_with":["dedicated_host_count"]}},"block_types":{"cluster_setting":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_app_service_hybrid_connection":{"block":{"attributes":{"app_service_name":{"type":"string","required":true},"hostname":{"type":"string","required":true},"namespace_name":{"type":"string","computed":true},"port":{"type":"number","required":true},"relay_id":{"type":"string","required":true},"relay_name":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"send_key_name":{"type":"string","optional":true,"default":"RootManageSharedAccessKey"},"send_key_value":{"type":"string","computed":true},"service_bus_namespace":{"type":"string","computed":true},"service_bus_suffix":{"type":"string","computed":true}}}},"azurerm_app_service_managed_certificate":{"block":{"attributes":{"canonical_name":{"type":"string","computed":true},"custom_hostname_binding_id":{"type":"string","required":true},"expiration_date":{"type":"string","computed":true},"friendly_name":{"type":"string","computed":true},"host_names":{"type":["list","string"],"computed":true},"issue_date":{"type":"string","computed":true},"issuer":{"type":"string","computed":true},"subject_name":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_app_service_plan":{"block":{"attributes":{"app_service_environment_id":{"type":"string","optional":true},"is_xenon":{"type":"bool","optional":true},"kind":{"type":"string","optional":true,"default":"Windows"},"location":{"type":"string","required":true},"maximum_elastic_worker_count":{"type":"number","optional":true,"computed":true},"maximum_number_of_workers":{"type":"number","computed":true},"name":{"type":"string","required":true},"per_site_scaling":{"type":"bool","optional":true},"reserved":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone_redundant":{"type":"bool","optional":true}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"computed":true},"size":{"type":"string","required":true},"tier":{"type":"string","required":true}}},"required":true}}}},"azurerm_app_service_public_certificate":{"block":{"attributes":{"app_service_name":{"type":"string","required":true},"blob":{"type":"string","required":true},"certificate_location":{"type":"string","required":true},"certificate_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_app_service_slot":{"block":{"attributes":{"app_service_name":{"type":"string","required":true},"app_service_plan_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true,"computed":true},"client_affinity_enabled":{"type":"bool","optional":true,"computed":true},"default_site_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"password":"string","username":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_params":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"default_provider":{"type":"string","optional":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages_enabled":{"type":"bool","optional":true,"default":false},"failed_request_tracing_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","optional":true,"default":"Off"}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"],"at_least_one_of":["logs.0.http_logs.0.azure_blob_storage","logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"],"at_least_one_of":["logs.0.http_logs.0.azure_blob_storage","logs.0.http_logs.0.file_system"]}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"acr_use_managed_identity_credentials":{"type":"bool","optional":true,"default":false},"acr_user_managed_identity_client_id":{"type":"string","optional":true},"always_on":{"type":"bool","optional":true,"default":false},"app_command_line":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"default_documents":{"type":["list","string"],"optional":true},"dotnet_framework_version":{"type":"string","optional":true,"default":"v4.0"},"ftps_state":{"type":"string","optional":true,"computed":true},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"java_container":{"type":"string","optional":true},"java_container_version":{"type":"string","optional":true},"java_version":{"type":"string","optional":true},"linux_fx_version":{"type":"string","optional":true,"computed":true},"local_mysql_enabled":{"type":"bool","optional":true,"computed":true},"managed_pipeline_mode":{"type":"string","optional":true,"computed":true},"min_tls_version":{"type":"string","optional":true,"computed":true},"number_of_workers":{"type":"number","optional":true,"computed":true},"php_version":{"type":"string","optional":true},"python_version":{"type":"string","optional":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"scm_type":{"type":"string","optional":true,"computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker_process":{"type":"bool","optional":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"computed":true},"websockets_enabled":{"type":"bool","optional":true,"computed":true},"windows_fx_version":{"type":"string","optional":true,"computed":true}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"required":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_app_service_slot_custom_hostname_binding":{"block":{"attributes":{"app_service_slot_id":{"type":"string","required":true},"hostname":{"type":"string","required":true},"ssl_state":{"type":"string","optional":true,"computed":true},"thumbprint":{"type":"string","optional":true,"computed":true},"virtual_ip":{"type":"string","computed":true}}}},"azurerm_app_service_slot_virtual_network_swift_connection":{"block":{"attributes":{"app_service_id":{"type":"string","required":true},"slot_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_app_service_source_control":{"block":{"attributes":{"app_id":{"type":"string","required":true},"branch":{"type":"string","optional":true,"computed":true,"required_with":["repo_url"]},"repo_url":{"type":"string","optional":true,"computed":true,"required_with":["branch"]},"rollback_enabled":{"type":"bool","optional":true,"default":false},"scm_type":{"type":"string","computed":true},"use_local_git":{"type":"bool","optional":true,"default":false,"conflicts_with":["repo_url","branch","use_manual_integration","uses_github_action","github_action_configuration","use_mercurial","rollback_enabled"]},"use_manual_integration":{"type":"bool","optional":true,"default":false},"use_mercurial":{"type":"bool","optional":true,"default":false},"uses_github_action":{"type":"bool","computed":true}},"block_types":{"github_action_configuration":{"nesting_mode":3,"block":{"attributes":{"generate_workflow_file":{"type":"bool","optional":true,"default":true},"linux_action":{"type":"bool","computed":true}},"block_types":{"code_configuration":{"nesting_mode":3,"block":{"attributes":{"runtime_stack":{"type":"string","required":true},"runtime_version":{"type":"string","required":true}}},"optional":true},"container_configuration":{"nesting_mode":3,"block":{"attributes":{"image_name":{"type":"string","required":true},"registry_password":{"type":"string","optional":true},"registry_url":{"type":"string","required":true},"registry_username":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_app_service_source_control_slot":{"block":{"attributes":{"branch":{"type":"string","optional":true,"computed":true,"required_with":["repo_url"]},"repo_url":{"type":"string","optional":true,"computed":true,"required_with":["branch"]},"rollback_enabled":{"type":"bool","optional":true,"default":false},"scm_type":{"type":"string","computed":true},"slot_id":{"type":"string","required":true},"use_local_git":{"type":"bool","optional":true,"default":false,"conflicts_with":["repo_url","branch","use_manual_integration","uses_github_action","github_action_configuration","use_mercurial","rollback_enabled"]},"use_manual_integration":{"type":"bool","optional":true,"default":false},"use_mercurial":{"type":"bool","optional":true,"default":false},"uses_github_action":{"type":"bool","computed":true}},"block_types":{"github_action_configuration":{"nesting_mode":3,"block":{"attributes":{"generate_workflow_file":{"type":"bool","optional":true,"default":true},"linux_action":{"type":"bool","computed":true}},"block_types":{"code_configuration":{"nesting_mode":3,"block":{"attributes":{"runtime_stack":{"type":"string","required":true},"runtime_version":{"type":"string","required":true}}},"optional":true},"container_configuration":{"nesting_mode":3,"block":{"attributes":{"image_name":{"type":"string","required":true},"registry_password":{"type":"string","optional":true},"registry_url":{"type":"string","required":true},"registry_username":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_app_service_source_control_token":{"block":{"attributes":{"token":{"type":"string","required":true},"token_secret":{"type":"string","optional":true},"type":{"type":"string","required":true}}}},"azurerm_app_service_virtual_network_swift_connection":{"block":{"attributes":{"app_service_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_application_gateway":{"block":{"attributes":{"enable_http2":{"type":"bool","optional":true},"fips_enabled":{"type":"bool","optional":true},"firewall_policy_id":{"type":"string","optional":true},"force_firewall_policy_association":{"type":"bool","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_endpoint_connection":{"type":["set",["object",{"id":"string","name":"string"}]],"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"authentication_certificate":{"nesting_mode":3,"block":{"attributes":{"data":{"type":"string","required":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true}}},"optional":true},"autoscale_configuration":{"nesting_mode":3,"block":{"attributes":{"max_capacity":{"type":"number","optional":true},"min_capacity":{"type":"number","required":true}}},"optional":true},"backend_address_pool":{"nesting_mode":4,"block":{"attributes":{"fqdns":{"type":["set","string"],"optional":true},"id":{"type":"string","computed":true},"ip_addresses":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true}}},"required":true},"backend_http_settings":{"nesting_mode":4,"block":{"attributes":{"affinity_cookie_name":{"type":"string","optional":true},"cookie_based_affinity":{"type":"string","required":true},"host_name":{"type":"string","optional":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"path":{"type":"string","optional":true},"pick_host_name_from_backend_address":{"type":"bool","optional":true,"default":false},"port":{"type":"number","required":true},"probe_id":{"type":"string","computed":true},"probe_name":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"request_timeout":{"type":"number","optional":true,"default":30},"trusted_root_certificate_names":{"type":["list","string"],"optional":true}},"block_types":{"authentication_certificate":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true}}},"optional":true},"connection_draining":{"nesting_mode":3,"block":{"attributes":{"drain_timeout_sec":{"type":"number","required":true},"enabled":{"type":"bool","required":true}}},"optional":true}}},"required":true},"custom_error_configuration":{"nesting_mode":3,"block":{"attributes":{"custom_error_page_url":{"type":"string","required":true},"id":{"type":"string","computed":true},"status_code":{"type":"string","required":true}}},"optional":true},"frontend_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"private_ip_address":{"type":"string","optional":true,"computed":true},"private_ip_address_allocation":{"type":"string","optional":true,"default":"Dynamic"},"private_link_configuration_id":{"type":"string","computed":true},"private_link_configuration_name":{"type":"string","optional":true},"public_ip_address_id":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true},"frontend_port":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"port":{"type":"number","required":true}}},"required":true},"gateway_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"required":true},"global":{"nesting_mode":3,"block":{"attributes":{"request_buffering_enabled":{"type":"bool","required":true},"response_buffering_enabled":{"type":"bool","required":true}}},"optional":true},"http_listener":{"nesting_mode":4,"block":{"attributes":{"firewall_policy_id":{"type":"string","optional":true},"frontend_ip_configuration_id":{"type":"string","computed":true},"frontend_ip_configuration_name":{"type":"string","required":true},"frontend_port_id":{"type":"string","computed":true},"frontend_port_name":{"type":"string","required":true},"host_name":{"type":"string","optional":true},"host_names":{"type":["set","string"],"optional":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"require_sni":{"type":"bool","optional":true},"ssl_certificate_id":{"type":"string","computed":true},"ssl_certificate_name":{"type":"string","optional":true},"ssl_profile_id":{"type":"string","computed":true},"ssl_profile_name":{"type":"string","optional":true}},"block_types":{"custom_error_configuration":{"nesting_mode":3,"block":{"attributes":{"custom_error_page_url":{"type":"string","required":true},"id":{"type":"string","computed":true},"status_code":{"type":"string","required":true}}},"optional":true}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"private_link_configuration":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","required":true},"private_ip_address":{"type":"string","optional":true,"computed":true},"private_ip_address_allocation":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"required":true}}},"optional":true},"probe":{"nesting_mode":4,"block":{"attributes":{"host":{"type":"string","optional":true},"id":{"type":"string","computed":true},"interval":{"type":"number","required":true},"minimum_servers":{"type":"number","optional":true,"default":0},"name":{"type":"string","required":true},"path":{"type":"string","required":true},"pick_host_name_from_backend_http_settings":{"type":"bool","optional":true,"default":false},"port":{"type":"number","optional":true},"protocol":{"type":"string","required":true},"timeout":{"type":"number","required":true},"unhealthy_threshold":{"type":"number","required":true}},"block_types":{"match":{"nesting_mode":3,"block":{"attributes":{"body":{"type":"string","optional":true},"status_code":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true},"redirect_configuration":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","computed":true},"include_path":{"type":"bool","optional":true,"default":false},"include_query_string":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"redirect_type":{"type":"string","required":true},"target_listener_id":{"type":"string","computed":true},"target_listener_name":{"type":"string","optional":true},"target_url":{"type":"string","optional":true}}},"optional":true},"request_routing_rule":{"nesting_mode":4,"block":{"attributes":{"backend_address_pool_id":{"type":"string","computed":true},"backend_address_pool_name":{"type":"string","optional":true},"backend_http_settings_id":{"type":"string","computed":true},"backend_http_settings_name":{"type":"string","optional":true},"http_listener_id":{"type":"string","computed":true},"http_listener_name":{"type":"string","required":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true},"redirect_configuration_id":{"type":"string","computed":true},"redirect_configuration_name":{"type":"string","optional":true},"rewrite_rule_set_id":{"type":"string","computed":true},"rewrite_rule_set_name":{"type":"string","optional":true},"rule_type":{"type":"string","required":true},"url_path_map_id":{"type":"string","computed":true},"url_path_map_name":{"type":"string","optional":true}}},"required":true},"rewrite_rule_set":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true}},"block_types":{"rewrite_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"rule_sequence":{"type":"number","required":true}},"block_types":{"condition":{"nesting_mode":3,"block":{"attributes":{"ignore_case":{"type":"bool","optional":true,"default":false},"negate":{"type":"bool","optional":true,"default":false},"pattern":{"type":"string","required":true},"variable":{"type":"string","required":true}}},"optional":true},"request_header_configuration":{"nesting_mode":3,"block":{"attributes":{"header_name":{"type":"string","required":true},"header_value":{"type":"string","required":true}}},"optional":true},"response_header_configuration":{"nesting_mode":3,"block":{"attributes":{"header_name":{"type":"string","required":true},"header_value":{"type":"string","required":true}}},"optional":true},"url":{"nesting_mode":3,"block":{"attributes":{"components":{"type":"string","optional":true},"path":{"type":"string","optional":true},"query_string":{"type":"string","optional":true},"reroute":{"type":"bool","optional":true,"default":false}}},"optional":true}}},"optional":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true},"name":{"type":"string","required":true},"tier":{"type":"string","required":true}}},"required":true},"ssl_certificate":{"nesting_mode":4,"block":{"attributes":{"data":{"type":"string","optional":true},"id":{"type":"string","computed":true},"key_vault_secret_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"public_cert_data":{"type":"string","computed":true}}},"optional":true},"ssl_policy":{"nesting_mode":3,"block":{"attributes":{"cipher_suites":{"type":["list","string"],"optional":true},"disabled_protocols":{"type":["list","string"],"optional":true},"min_protocol_version":{"type":"string","optional":true},"policy_name":{"type":"string","optional":true},"policy_type":{"type":"string","optional":true}}},"optional":true,"computed":true},"ssl_profile":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"trusted_client_certificate_names":{"type":["list","string"],"optional":true},"verify_client_cert_issuer_dn":{"type":"bool","optional":true,"default":false},"verify_client_certificate_revocation":{"type":"string","optional":true}},"block_types":{"ssl_policy":{"nesting_mode":3,"block":{"attributes":{"cipher_suites":{"type":["list","string"],"optional":true},"disabled_protocols":{"type":["list","string"],"optional":true},"min_protocol_version":{"type":"string","optional":true},"policy_name":{"type":"string","optional":true},"policy_type":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"trusted_client_certificate":{"nesting_mode":3,"block":{"attributes":{"data":{"type":"string","required":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true}}},"optional":true},"trusted_root_certificate":{"nesting_mode":3,"block":{"attributes":{"data":{"type":"string","optional":true},"id":{"type":"string","computed":true},"key_vault_secret_id":{"type":"string","optional":true},"name":{"type":"string","required":true}}},"optional":true},"url_path_map":{"nesting_mode":3,"block":{"attributes":{"default_backend_address_pool_id":{"type":"string","computed":true},"default_backend_address_pool_name":{"type":"string","optional":true},"default_backend_http_settings_id":{"type":"string","computed":true},"default_backend_http_settings_name":{"type":"string","optional":true},"default_redirect_configuration_id":{"type":"string","computed":true},"default_redirect_configuration_name":{"type":"string","optional":true},"default_rewrite_rule_set_id":{"type":"string","computed":true},"default_rewrite_rule_set_name":{"type":"string","optional":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true}},"block_types":{"path_rule":{"nesting_mode":3,"block":{"attributes":{"backend_address_pool_id":{"type":"string","computed":true},"backend_address_pool_name":{"type":"string","optional":true},"backend_http_settings_id":{"type":"string","computed":true},"backend_http_settings_name":{"type":"string","optional":true},"firewall_policy_id":{"type":"string","optional":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"paths":{"type":["list","string"],"required":true},"redirect_configuration_id":{"type":"string","computed":true},"redirect_configuration_name":{"type":"string","optional":true},"rewrite_rule_set_id":{"type":"string","computed":true},"rewrite_rule_set_name":{"type":"string","optional":true}}},"required":true}}},"optional":true},"waf_configuration":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"file_upload_limit_mb":{"type":"number","optional":true,"default":100},"firewall_mode":{"type":"string","required":true},"max_request_body_size_kb":{"type":"number","optional":true,"default":128},"request_body_check":{"type":"bool","optional":true,"default":true},"rule_set_type":{"type":"string","optional":true,"default":"OWASP"},"rule_set_version":{"type":"string","required":true}},"block_types":{"disabled_rule_group":{"nesting_mode":3,"block":{"attributes":{"rule_group_name":{"type":"string","required":true},"rules":{"type":["list","number"],"optional":true}}},"optional":true},"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"selector":{"type":"string","optional":true},"selector_match_operator":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_application_insights":{"block":{"attributes":{"app_id":{"type":"string","computed":true},"application_type":{"type":"string","required":true},"connection_string":{"type":"string","computed":true},"daily_data_cap_in_gb":{"type":"number","optional":true,"default":100},"daily_data_cap_notifications_disabled":{"type":"bool","optional":true},"disable_ip_masking":{"type":"bool","optional":true,"default":false},"force_customer_storage_for_profiler":{"type":"bool","optional":true,"default":false},"instrumentation_key":{"type":"string","computed":true},"internet_ingestion_enabled":{"type":"bool","optional":true,"default":true},"internet_query_enabled":{"type":"bool","optional":true,"default":true},"local_authentication_disabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"retention_in_days":{"type":"number","optional":true,"default":90},"sampling_percentage":{"type":"number","optional":true,"default":100},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_application_insights_analytics_item":{"block":{"attributes":{"application_insights_id":{"type":"string","required":true},"content":{"type":"string","required":true},"function_alias":{"type":"string","optional":true},"name":{"type":"string","required":true},"scope":{"type":"string","required":true},"time_created":{"type":"string","computed":true},"time_modified":{"type":"string","computed":true},"type":{"type":"string","required":true},"version":{"type":"string","computed":true}}}},"azurerm_application_insights_api_key":{"block":{"attributes":{"api_key":{"type":"string","computed":true},"application_insights_id":{"type":"string","required":true},"name":{"type":"string","required":true},"read_permissions":{"type":["set","string"],"optional":true},"write_permissions":{"type":["set","string"],"optional":true}}}},"azurerm_application_insights_smart_detection_rule":{"block":{"attributes":{"additional_email_recipients":{"type":["set","string"],"optional":true},"application_insights_id":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"send_emails_to_subscription_owners":{"type":"bool","optional":true,"default":true}}}},"azurerm_application_insights_standard_web_test":{"block":{"attributes":{"application_insights_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true},"frequency":{"type":"number","optional":true,"default":300},"geo_locations":{"type":["list","string"],"required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"retry_enabled":{"type":"bool","optional":true},"synthetic_monitor_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"timeout":{"type":"number","optional":true,"default":30}},"block_types":{"request":{"nesting_mode":3,"block":{"attributes":{"body":{"type":"string","optional":true},"follow_redirects_enabled":{"type":"bool","optional":true,"default":true},"http_verb":{"type":"string","optional":true,"default":"GET"},"parse_dependent_requests_enabled":{"type":"bool","optional":true,"default":true},"url":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"required":true},"validation_rules":{"nesting_mode":3,"block":{"attributes":{"expected_status_code":{"type":"number","optional":true,"default":200},"ssl_cert_remaining_lifetime":{"type":"number","optional":true},"ssl_check_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"content":{"nesting_mode":3,"block":{"attributes":{"content_match":{"type":"string","required":true},"ignore_case":{"type":"bool","optional":true,"default":false},"pass_if_text_found":{"type":"bool","optional":true,"default":false}}},"optional":true}}},"optional":true}}}},"azurerm_application_insights_web_test":{"block":{"attributes":{"application_insights_id":{"type":"string","required":true},"configuration":{"type":"string","required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true},"frequency":{"type":"number","optional":true,"default":300},"geo_locations":{"type":["list","string"],"required":true},"kind":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"retry_enabled":{"type":"bool","optional":true},"synthetic_monitor_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"timeout":{"type":"number","optional":true,"default":30}}}},"azurerm_application_insights_workbook":{"block":{"attributes":{"category":{"type":"string","optional":true,"default":"workbook"},"data_json":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_id":{"type":"string","optional":true,"default":"azure monitor"},"storage_container_id":{"type":"string","optional":true,"required_with":["identity"]},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_application_insights_workbook_template":{"block":{"attributes":{"author":{"type":"string","optional":true},"localized":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":0},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"template_data":{"type":"string","required":true}},"block_types":{"galleries":{"nesting_mode":3,"block":{"attributes":{"category":{"type":"string","required":true},"name":{"type":"string","required":true},"order":{"type":"number","optional":true,"default":0},"resource_type":{"type":"string","optional":true,"default":"Azure Monitor"},"type":{"type":"string","optional":true,"default":"workbook"}}},"required":true}}}},"azurerm_application_load_balancer":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_configuration_endpoint":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_application_load_balancer_frontend":{"block":{"attributes":{"application_load_balancer_id":{"type":"string","required":true},"fully_qualified_domain_name":{"type":"string","computed":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_application_load_balancer_security_policy":{"block":{"attributes":{"application_load_balancer_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"web_application_firewall_policy_id":{"type":"string","required":true}}}},"azurerm_application_load_balancer_subnet_association":{"block":{"attributes":{"application_load_balancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_application_security_group":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_arc_kubernetes_cluster":{"block":{"attributes":{"agent_public_key_certificate":{"type":"string","required":true},"agent_version":{"type":"string","computed":true},"distribution":{"type":"string","computed":true},"infrastructure":{"type":"string","computed":true},"kubernetes_version":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"offering":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"total_core_count":{"type":"number","computed":true},"total_node_count":{"type":"number","computed":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_arc_kubernetes_cluster_extension":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"configuration_protected_settings":{"type":["map","string"],"optional":true},"configuration_settings":{"type":["map","string"],"optional":true},"current_version":{"type":"string","computed":true},"extension_type":{"type":"string","required":true},"name":{"type":"string","required":true},"release_namespace":{"type":"string","optional":true,"computed":true,"conflicts_with":["target_namespace"]},"release_train":{"type":"string","optional":true,"computed":true},"target_namespace":{"type":"string","optional":true,"computed":true,"conflicts_with":["release_namespace"]},"version":{"type":"string","optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_arc_kubernetes_flux_configuration":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"continuous_reconciliation_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"namespace":{"type":"string","required":true},"scope":{"type":"string","optional":true,"default":"namespace"}},"block_types":{"blob_storage":{"nesting_mode":3,"block":{"attributes":{"account_key":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"container_id":{"type":"string","required":true},"local_auth_reference":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"sas_token":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600}},"block_types":{"service_principal":{"nesting_mode":3,"block":{"attributes":{"client_certificate_base64":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.service_principal.0.client_certificate_base64","blob_storage.0.service_principal.0.client_secret"]},"client_certificate_password":{"type":"string","optional":true,"required_with":["blob_storage.0.service_principal.0.client_certificate_base64"]},"client_certificate_send_chain":{"type":"bool","optional":true,"default":false},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.service_principal.0.client_certificate_base64","blob_storage.0.service_principal.0.client_secret"]},"tenant_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.sas_token","blob_storage.0.service_principal"]}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"bucket":{"nesting_mode":3,"block":{"attributes":{"access_key":{"type":"string","optional":true,"exactly_one_of":["bucket.0.access_key","bucket.0.local_auth_reference"],"required_with":["bucket.0.secret_key_base64"]},"bucket_name":{"type":"string","required":true},"local_auth_reference":{"type":"string","optional":true,"exactly_one_of":["bucket.0.access_key","bucket.0.local_auth_reference"]},"secret_key_base64":{"type":"string","optional":true,"required_with":["bucket.0.access_key"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600},"tls_enabled":{"type":"bool","optional":true,"default":true},"url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"git_repository":{"nesting_mode":3,"block":{"attributes":{"https_ca_cert_base64":{"type":"string","optional":true,"required_with":["git_repository.0.https_user"]},"https_key_base64":{"type":"string","optional":true,"required_with":["git_repository.0.https_user"]},"https_user":{"type":"string","optional":true,"conflicts_with":["git_repository.0.local_auth_reference","git_repository.0.ssh_private_key_base64","git_repository.0.ssh_known_hosts_base64"],"required_with":["git_repository.0.https_key_base64"]},"local_auth_reference":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.ssh_private_key_base64","git_repository.0.ssh_known_hosts_base64"]},"reference_type":{"type":"string","required":true},"reference_value":{"type":"string","required":true},"ssh_known_hosts_base64":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.local_auth_reference"]},"ssh_private_key_base64":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.local_auth_reference"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600},"url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"kustomizations":{"nesting_mode":4,"block":{"attributes":{"depends_on":{"type":["list","string"],"optional":true},"garbage_collection_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"path":{"type":"string","optional":true},"recreating_enabled":{"type":"bool","optional":true,"default":false},"retry_interval_in_seconds":{"type":"number","optional":true,"default":600},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600}}},"required":true}}}},"azurerm_arc_kubernetes_provisioned_cluster":{"block":{"attributes":{"agent_version":{"type":"string","computed":true},"arc_agent_auto_upgrade_enabled":{"type":"bool","optional":true,"default":true},"arc_agent_desired_version":{"type":"string","optional":true},"distribution":{"type":"string","computed":true},"infrastructure":{"type":"string","computed":true},"kubernetes_version":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"offering":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"total_core_count":{"type":"number","computed":true},"total_node_count":{"type":"number","computed":true}},"block_types":{"azure_active_directory":{"nesting_mode":3,"block":{"attributes":{"admin_group_object_ids":{"type":["list","string"],"optional":true},"azure_rbac_enabled":{"type":"bool","optional":true,"default":false},"tenant_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_arc_machine":{"block":{"attributes":{"kind":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_arc_machine_automanage_configuration_assignment":{"block":{"attributes":{"arc_machine_id":{"type":"string","required":true},"configuration_id":{"type":"string","required":true}}}},"azurerm_arc_machine_extension":{"block":{"attributes":{"arc_machine_id":{"type":"string","required":true},"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":true},"force_update_tag":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","optional":true}}}},"azurerm_arc_private_link_scope":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_arc_resource_bridge_appliance":{"block":{"attributes":{"distro":{"type":"string","required":true},"infrastructure_provider":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_key_base64":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_attestation_provider":{"block":{"attributes":{"attestation_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"open_enclave_policy_base64":{"type":"string","optional":true},"policy_signing_certificate_data":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"sev_snp_policy_base64":{"type":"string","optional":true},"sgx_enclave_policy_base64":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"tpm_policy_base64":{"type":"string","optional":true},"trust_model":{"type":"string","computed":true}}}},"azurerm_automanage_configuration":{"block":{"attributes":{"automation_account_enabled":{"type":"bool","optional":true,"default":false},"boot_diagnostics_enabled":{"type":"bool","optional":true,"default":false},"defender_for_cloud_enabled":{"type":"bool","optional":true,"default":false},"guest_configuration_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"log_analytics_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"status_change_alert_enabled":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true}},"block_types":{"antimalware":{"nesting_mode":3,"block":{"attributes":{"real_time_protection_enabled":{"type":"bool","optional":true,"default":false},"scheduled_scan_day":{"type":"number","optional":true,"default":8},"scheduled_scan_enabled":{"type":"bool","optional":true,"default":false},"scheduled_scan_time_in_minutes":{"type":"number","optional":true,"default":0},"scheduled_scan_type":{"type":"string","optional":true,"default":"Quick"}},"block_types":{"exclusions":{"nesting_mode":3,"block":{"attributes":{"extensions":{"type":"string","optional":true},"paths":{"type":"string","optional":true},"processes":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"azure_security_baseline":{"nesting_mode":3,"block":{"attributes":{"assignment_type":{"type":"string","optional":true,"default":"ApplyAndAutoCorrect"}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"instant_rp_retention_range_in_days":{"type":"number","optional":true,"default":5},"policy_name":{"type":"string","optional":true},"time_zone":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"retention_policy":{"nesting_mode":3,"block":{"attributes":{"retention_policy_type":{"type":"string","optional":true,"default":"LongTermRetentionPolicy"}},"block_types":{"daily_schedule":{"nesting_mode":3,"block":{"attributes":{"retention_times":{"type":["list","string"],"optional":true}},"block_types":{"retention_duration":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","optional":true},"duration_type":{"type":"string","optional":true,"default":"Days"}}},"optional":true}}},"optional":true},"weekly_schedule":{"nesting_mode":3,"block":{"attributes":{"retention_times":{"type":["list","string"],"optional":true}},"block_types":{"retention_duration":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","optional":true},"duration_type":{"type":"string","optional":true,"default":"Weeks"}}},"optional":true}}},"optional":true}}},"optional":true},"schedule_policy":{"nesting_mode":3,"block":{"attributes":{"schedule_policy_type":{"type":"string","optional":true,"default":"SimpleSchedulePolicy"},"schedule_run_days":{"type":["list","string"],"optional":true},"schedule_run_frequency":{"type":"string","optional":true,"default":"Daily"},"schedule_run_times":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_automation_account":{"block":{"attributes":{"dsc_primary_access_key":{"type":"string","computed":true},"dsc_secondary_access_key":{"type":"string","computed":true},"dsc_server_endpoint":{"type":"string","computed":true},"hybrid_service_url":{"type":"string","computed":true},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_endpoint_connection":{"type":["list",["object",{"id":"string","name":"string"}]],"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"key_source":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_automation_certificate":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"base64":{"type":"string","required":true},"description":{"type":"string","optional":true},"exportable":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_automation_connection":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"type":{"type":"string","required":true},"values":{"type":["map","string"],"required":true}}}},"azurerm_automation_connection_certificate":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"automation_certificate_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}}}},"azurerm_automation_connection_classic_certificate":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"certificate_asset_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","required":true},"subscription_name":{"type":"string","required":true}}}},"azurerm_automation_connection_service_principal":{"block":{"attributes":{"application_id":{"type":"string","required":true},"automation_account_name":{"type":"string","required":true},"certificate_thumbprint":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_automation_connection_type":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"is_global":{"type":"bool","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"field":{"nesting_mode":3,"block":{"attributes":{"is_encrypted":{"type":"bool","optional":true},"is_optional":{"type":"bool","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_automation_credential":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"username":{"type":"string","required":true}}}},"azurerm_automation_dsc_configuration":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"content_embedded":{"type":"string","required":true},"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"log_verbose":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"state":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_automation_dsc_nodeconfiguration":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"configuration_name":{"type":"string","computed":true},"content_embedded":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_automation_hybrid_runbook_worker":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"ip":{"type":"string","computed":true},"last_seen_date_time":{"type":"string","computed":true},"registration_date_time":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"vm_resource_id":{"type":"string","required":true},"worker_group_name":{"type":"string","required":true},"worker_id":{"type":"string","required":true},"worker_name":{"type":"string","computed":true},"worker_type":{"type":"string","computed":true}}}},"azurerm_automation_hybrid_runbook_worker_group":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"credential_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_automation_job_schedule":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"job_schedule_id":{"type":"string","optional":true,"computed":true},"parameters":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"run_on":{"type":"string","optional":true},"runbook_name":{"type":"string","required":true},"schedule_name":{"type":"string","required":true}}}},"azurerm_automation_module":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"module_link":{"nesting_mode":3,"block":{"attributes":{"uri":{"type":"string","required":true}},"block_types":{"hash":{"nesting_mode":3,"block":{"attributes":{"algorithm":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_automation_powershell72_module":{"block":{"attributes":{"automation_account_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"module_link":{"nesting_mode":3,"block":{"attributes":{"uri":{"type":"string","required":true}},"block_types":{"hash":{"nesting_mode":3,"block":{"attributes":{"algorithm":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_automation_python3_package":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"content_uri":{"type":"string","required":true},"content_version":{"type":"string","optional":true},"hash_algorithm":{"type":"string","optional":true,"required_with":["hash_value"]},"hash_value":{"type":"string","optional":true,"required_with":["hash_algorithm"]},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_automation_runbook":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"content":{"type":"string","optional":true,"computed":true,"at_least_one_of":["content","publish_content_link","draft"]},"description":{"type":"string","optional":true},"job_schedule":{"type":["set",["object",{"job_schedule_id":"string","parameters":["map","string"],"run_on":"string","schedule_name":"string"}]],"optional":true,"computed":true},"location":{"type":"string","required":true},"log_activity_trace_level":{"type":"number","optional":true},"log_progress":{"type":"bool","required":true},"log_verbose":{"type":"bool","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"runbook_type":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"draft":{"nesting_mode":3,"block":{"attributes":{"creation_time":{"type":"string","computed":true},"edit_mode_enabled":{"type":"bool","optional":true},"last_modified_time":{"type":"string","computed":true},"output_types":{"type":["list","string"],"optional":true}},"block_types":{"content_link":{"nesting_mode":3,"block":{"attributes":{"uri":{"type":"string","required":true},"version":{"type":"string","optional":true}},"block_types":{"hash":{"nesting_mode":3,"block":{"attributes":{"algorithm":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"parameters":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"key":{"type":"string","required":true},"mandatory":{"type":"bool","optional":true,"default":false},"position":{"type":"number","optional":true},"type":{"type":"string","required":true}}},"optional":true}}},"optional":true},"publish_content_link":{"nesting_mode":3,"block":{"attributes":{"uri":{"type":"string","required":true},"version":{"type":"string","optional":true}},"block_types":{"hash":{"nesting_mode":3,"block":{"attributes":{"algorithm":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true,"at_least_one_of":["content","publish_content_link","draft"]}}}},"azurerm_automation_schedule":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"expiry_time":{"type":"string","optional":true,"computed":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","optional":true,"computed":true},"month_days":{"type":["set","number"],"optional":true,"conflicts_with":["week_days","monthly_occurrence"]},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"start_time":{"type":"string","optional":true,"computed":true},"timezone":{"type":"string","optional":true,"default":"Etc/UTC"},"week_days":{"type":["set","string"],"optional":true,"conflicts_with":["month_days","monthly_occurrence"]}},"block_types":{"monthly_occurrence":{"nesting_mode":3,"block":{"attributes":{"day":{"type":"string","required":true},"occurrence":{"type":"number","required":true}}},"optional":true,"conflicts_with":["week_days","month_days"]}}}},"azurerm_automation_software_update_configuration":{"block":{"attributes":{"automation_account_id":{"type":"string","required":true},"duration":{"type":"string","optional":true,"default":"PT2H"},"error_code":{"type":"string","computed":true},"error_message":{"type":"string","computed":true},"name":{"type":"string","required":true},"non_azure_computer_names":{"type":["list","string"],"optional":true},"virtual_machine_ids":{"type":["list","string"],"optional":true}},"block_types":{"linux":{"nesting_mode":3,"block":{"attributes":{"classifications_included":{"type":["list","string"],"required":true},"excluded_packages":{"type":["list","string"],"optional":true},"included_packages":{"type":["list","string"],"optional":true},"reboot":{"type":"string","optional":true,"default":"IfRequired"}}},"optional":true,"exactly_one_of":["windows","linux"]},"post_task":{"nesting_mode":3,"block":{"attributes":{"parameters":{"type":["map","string"],"optional":true},"source":{"type":"string","optional":true}}},"optional":true},"pre_task":{"nesting_mode":3,"block":{"attributes":{"parameters":{"type":["map","string"],"optional":true},"source":{"type":"string","optional":true}}},"optional":true},"schedule":{"nesting_mode":3,"block":{"attributes":{"advanced_month_days":{"type":["list","number"],"optional":true},"advanced_week_days":{"type":["list","string"],"optional":true},"creation_time":{"type":"string","computed":true},"description":{"type":"string","optional":true},"expiry_time":{"type":"string","optional":true,"computed":true},"expiry_time_offset_minutes":{"type":"number","optional":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","optional":true},"is_enabled":{"type":"bool","optional":true,"default":true},"last_modified_time":{"type":"string","computed":true},"next_run":{"type":"string","optional":true,"computed":true},"next_run_offset_minutes":{"type":"number","optional":true},"start_time":{"type":"string","optional":true,"computed":true},"start_time_offset_minutes":{"type":"number","optional":true},"time_zone":{"type":"string","optional":true,"default":"Etc/UTC"}},"block_types":{"monthly_occurrence":{"nesting_mode":3,"block":{"attributes":{"day":{"type":"string","required":true},"occurrence":{"type":"number","required":true}}},"optional":true}}},"required":true},"target":{"nesting_mode":3,"block":{"block_types":{"azure_query":{"nesting_mode":3,"block":{"attributes":{"locations":{"type":["list","string"],"optional":true},"scope":{"type":["list","string"],"optional":true},"tag_filter":{"type":"string","optional":true}},"block_types":{"tags":{"nesting_mode":3,"block":{"attributes":{"tag":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true},"non_azure_query":{"nesting_mode":3,"block":{"attributes":{"function_alias":{"type":"string","optional":true},"workspace_id":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"windows":{"nesting_mode":3,"block":{"attributes":{"classifications_included":{"type":["list","string"],"required":true},"excluded_knowledge_base_numbers":{"type":["list","string"],"optional":true},"included_knowledge_base_numbers":{"type":["list","string"],"optional":true},"reboot":{"type":"string","optional":true,"default":"IfRequired"}}},"optional":true,"exactly_one_of":["windows","linux"]}}}},"azurerm_automation_source_control":{"block":{"attributes":{"automatic_sync":{"type":"bool","optional":true,"default":false},"automation_account_id":{"type":"string","required":true},"branch":{"type":"string","optional":true},"description":{"type":"string","optional":true},"folder_path":{"type":"string","required":true},"name":{"type":"string","required":true},"publish_runbook_enabled":{"type":"bool","optional":true,"default":true},"repository_url":{"type":"string","required":true},"source_control_type":{"type":"string","required":true}},"block_types":{"security":{"nesting_mode":3,"block":{"attributes":{"refresh_token":{"type":"string","optional":true},"token":{"type":"string","required":true},"token_type":{"type":"string","required":true}}},"required":true}}}},"azurerm_automation_variable_bool":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"bool","optional":true}}}},"azurerm_automation_variable_datetime":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"string","optional":true}}}},"azurerm_automation_variable_int":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"number","optional":true}}}},"azurerm_automation_variable_object":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"string","optional":true}}}},"azurerm_automation_variable_string":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"string","optional":true}}}},"azurerm_automation_watcher":{"block":{"attributes":{"automation_account_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"etag":{"type":"string","optional":true},"execution_frequency_in_seconds":{"type":"number","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"script_name":{"type":"string","required":true},"script_parameters":{"type":["map","string"],"optional":true},"script_run_on":{"type":"string","required":true},"status":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_automation_webhook":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"expiry_time":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"run_on_worker_group":{"type":"string","optional":true},"runbook_name":{"type":"string","required":true},"uri":{"type":"string","optional":true,"computed":true}}}},"azurerm_availability_set":{"block":{"attributes":{"location":{"type":"string","required":true},"managed":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"platform_fault_domain_count":{"type":"number","optional":true,"default":3},"platform_update_domain_count":{"type":"number","optional":true,"default":5},"proximity_placement_group_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_backup_container_storage_account":{"block":{"attributes":{"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}}},"azurerm_backup_policy_file_share":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"timezone":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"backup":{"nesting_mode":3,"block":{"attributes":{"frequency":{"type":"string","required":true},"time":{"type":"string","optional":true,"conflicts_with":["backup.0.hourly"],"at_least_one_of":["backup.0.time","backup.0.hourly"]}},"block_types":{"hourly":{"nesting_mode":3,"block":{"attributes":{"interval":{"type":"number","required":true},"start_time":{"type":"string","required":true},"window_duration":{"type":"number","required":true}}},"optional":true,"conflicts_with":["backup.0.time"],"at_least_one_of":["backup.0.time","backup.0.hourly"]}}},"required":true},"retention_daily":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true}}},"required":true},"retention_monthly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"days":{"type":["set","number"],"optional":true,"conflicts_with":["retention_monthly.0.weeks","retention_monthly.0.weekdays"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"]},"include_last_days":{"type":"bool","optional":true,"default":false,"conflicts_with":["retention_monthly.0.weeks","retention_monthly.0.weekdays"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"]},"weekdays":{"type":["set","string"],"optional":true,"conflicts_with":["retention_monthly.0.days","retention_monthly.0.include_last_days"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"],"required_with":["retention_monthly.0.weeks"]},"weeks":{"type":["set","string"],"optional":true,"conflicts_with":["retention_monthly.0.days","retention_monthly.0.include_last_days"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"],"required_with":["retention_monthly.0.weekdays"]}}},"optional":true},"retention_weekly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"weekdays":{"type":["set","string"],"required":true}}},"optional":true},"retention_yearly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"days":{"type":["set","number"],"optional":true,"conflicts_with":["retention_yearly.0.weeks","retention_yearly.0.weekdays"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"]},"include_last_days":{"type":"bool","optional":true,"default":false,"conflicts_with":["retention_yearly.0.weeks","retention_yearly.0.weekdays"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"]},"months":{"type":["set","string"],"required":true},"weekdays":{"type":["set","string"],"optional":true,"conflicts_with":["retention_yearly.0.days","retention_yearly.0.include_last_days"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"],"required_with":["retention_yearly.0.weeks"]},"weeks":{"type":["set","string"],"optional":true,"conflicts_with":["retention_yearly.0.days","retention_yearly.0.include_last_days"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"],"required_with":["retention_yearly.0.weekdays"]}}},"optional":true}}}},"azurerm_backup_policy_vm":{"block":{"attributes":{"instant_restore_retention_days":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"policy_type":{"type":"string","optional":true,"default":"V1"},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"timezone":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"backup":{"nesting_mode":3,"block":{"attributes":{"frequency":{"type":"string","required":true},"hour_duration":{"type":"number","optional":true},"hour_interval":{"type":"number","optional":true},"time":{"type":"string","required":true},"weekdays":{"type":["set","string"],"optional":true}}},"required":true},"instant_restore_resource_group":{"nesting_mode":3,"block":{"attributes":{"prefix":{"type":"string","required":true},"suffix":{"type":"string","optional":true}}},"optional":true},"retention_daily":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true}}},"optional":true},"retention_monthly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"days":{"type":["set","number"],"optional":true,"conflicts_with":["retention_monthly.0.weeks","retention_monthly.0.weekdays"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"]},"include_last_days":{"type":"bool","optional":true,"default":false,"conflicts_with":["retention_monthly.0.weeks","retention_monthly.0.weekdays"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"]},"weekdays":{"type":["set","string"],"optional":true,"conflicts_with":["retention_monthly.0.days","retention_monthly.0.include_last_days"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"],"required_with":["retention_monthly.0.weeks"]},"weeks":{"type":["set","string"],"optional":true,"conflicts_with":["retention_monthly.0.days","retention_monthly.0.include_last_days"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"],"required_with":["retention_monthly.0.weekdays"]}}},"optional":true},"retention_weekly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"weekdays":{"type":["set","string"],"required":true}}},"optional":true},"retention_yearly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"days":{"type":["set","number"],"optional":true,"conflicts_with":["retention_yearly.0.weeks","retention_yearly.0.weekdays"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"]},"include_last_days":{"type":"bool","optional":true,"default":false,"conflicts_with":["retention_yearly.0.weeks","retention_yearly.0.weekdays"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"]},"months":{"type":["set","string"],"required":true},"weekdays":{"type":["set","string"],"optional":true,"conflicts_with":["retention_yearly.0.days","retention_yearly.0.include_last_days"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"],"required_with":["retention_yearly.0.weeks"]},"weeks":{"type":["set","string"],"optional":true,"conflicts_with":["retention_yearly.0.days","retention_yearly.0.include_last_days"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"],"required_with":["retention_yearly.0.weekdays"]}}},"optional":true},"tiering_policy":{"nesting_mode":3,"block":{"block_types":{"archived_restore_point":{"nesting_mode":3,"block":{"attributes":{"duration":{"type":"number","optional":true},"duration_type":{"type":"string","optional":true},"mode":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_backup_policy_vm_workload":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"workload_type":{"type":"string","required":true}},"block_types":{"protection_policy":{"nesting_mode":4,"block":{"attributes":{"policy_type":{"type":"string","required":true}},"block_types":{"backup":{"nesting_mode":3,"block":{"attributes":{"frequency":{"type":"string","optional":true},"frequency_in_minutes":{"type":"number","optional":true},"time":{"type":"string","optional":true},"weekdays":{"type":["set","string"],"optional":true}}},"required":true},"retention_daily":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true}}},"optional":true},"retention_monthly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"format_type":{"type":"string","required":true},"monthdays":{"type":["set","number"],"optional":true},"weekdays":{"type":["set","string"],"optional":true},"weeks":{"type":["set","string"],"optional":true}}},"optional":true},"retention_weekly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"weekdays":{"type":["set","string"],"required":true}}},"optional":true},"retention_yearly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"format_type":{"type":"string","required":true},"monthdays":{"type":["set","number"],"optional":true},"months":{"type":["set","string"],"required":true},"weekdays":{"type":["set","string"],"optional":true},"weeks":{"type":["set","string"],"optional":true}}},"optional":true},"simple_retention":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true}}},"optional":true}}},"required":true},"settings":{"nesting_mode":3,"block":{"attributes":{"compression_enabled":{"type":"bool","optional":true,"default":false},"time_zone":{"type":"string","required":true}}},"required":true}}}},"azurerm_backup_protected_file_share":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_file_share_name":{"type":"string","required":true},"source_storage_account_id":{"type":"string","required":true}}}},"azurerm_backup_protected_vm":{"block":{"attributes":{"backup_policy_id":{"type":"string","optional":true},"exclude_disk_luns":{"type":["set","number"],"optional":true,"conflicts_with":["include_disk_luns"]},"include_disk_luns":{"type":["set","number"],"optional":true,"conflicts_with":["exclude_disk_luns"]},"protection_state":{"type":"string","optional":true,"computed":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_vm_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_bastion_host":{"block":{"attributes":{"copy_paste_enabled":{"type":"bool","optional":true,"default":true},"dns_name":{"type":"string","computed":true},"file_copy_enabled":{"type":"bool","optional":true,"default":false},"ip_connect_enabled":{"type":"bool","optional":true,"default":false},"kerberos_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scale_units":{"type":"number","optional":true,"default":2},"session_recording_enabled":{"type":"bool","optional":true,"default":false},"shareable_link_enabled":{"type":"bool","optional":true,"default":false},"sku":{"type":"string","optional":true,"default":"Basic"},"tags":{"type":["map","string"],"optional":true},"tunneling_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_id":{"type":"string","optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"public_ip_address_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_batch_account":{"block":{"attributes":{"account_endpoint":{"type":"string","computed":true},"allowed_authentication_modes":{"type":["set","string"],"optional":true,"computed":true},"encryption":{"type":["list",["object",{"key_vault_key_id":"string"}]],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"pool_allocation_mode":{"type":"string","optional":true,"default":"BatchService"},"primary_access_key":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"storage_account_authentication_mode":{"type":"string","optional":true,"required_with":["storage_account_id"]},"storage_account_id":{"type":"string","optional":true,"required_with":["storage_account_authentication_mode"]},"storage_account_node_identity":{"type":"string","optional":true,"required_with":["storage_account_id"]},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"key_vault_reference":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","required":true},"url":{"type":"string","required":true}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"block_types":{"account_access":{"nesting_mode":3,"block":{"attributes":{"default_action":{"type":"string","optional":true,"default":"Deny"}},"block_types":{"ip_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"ip_range":{"type":"string","required":true}}},"optional":true}}},"optional":true,"at_least_one_of":["network_profile.0.account_access","network_profile.0.node_management_access"]},"node_management_access":{"nesting_mode":3,"block":{"attributes":{"default_action":{"type":"string","optional":true,"default":"Deny"}},"block_types":{"ip_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"ip_range":{"type":"string","required":true}}},"optional":true}}},"optional":true,"at_least_one_of":["network_profile.0.account_access","network_profile.0.node_management_access"]}}},"optional":true}}}},"azurerm_batch_application":{"block":{"attributes":{"account_name":{"type":"string","required":true},"allow_updates":{"type":"bool","optional":true,"default":true},"default_version":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_batch_certificate":{"block":{"attributes":{"account_name":{"type":"string","required":true},"certificate":{"type":"string","required":true},"format":{"type":"string","required":true},"name":{"type":"string","computed":true},"password":{"type":"string","optional":true},"public_data":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"thumbprint":{"type":"string","required":true},"thumbprint_algorithm":{"type":"string","required":true}}}},"azurerm_batch_job":{"block":{"attributes":{"batch_pool_id":{"type":"string","required":true},"common_environment_properties":{"type":["map","string"],"optional":true},"display_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":0},"task_retry_maximum":{"type":"number","optional":true}}}},"azurerm_batch_pool":{"block":{"attributes":{"account_name":{"type":"string","required":true},"display_name":{"type":"string","optional":true},"inter_node_communication":{"type":"string","optional":true,"default":"Enabled"},"license_type":{"type":"string","optional":true},"max_tasks_per_node":{"type":"number","optional":true,"default":1},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"node_agent_sku_id":{"type":"string","required":true},"os_disk_placement":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"stop_pending_resize_operation":{"type":"bool","optional":true,"default":false},"target_node_communication_mode":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"auto_scale":{"nesting_mode":3,"block":{"attributes":{"evaluation_interval":{"type":"string","optional":true,"default":"PT15M"},"formula":{"type":"string","required":true}}},"optional":true},"certificate":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","required":true},"store_location":{"type":"string","required":true},"store_name":{"type":"string","optional":true},"visibility":{"type":["set","string"],"optional":true}}},"optional":true},"container_configuration":{"nesting_mode":3,"block":{"attributes":{"container_image_names":{"type":["set","string"],"optional":true,"at_least_one_of":["container_configuration.0.type","container_configuration.0.container_image_names","container_configuration.0.container_registries"]},"container_registries":{"type":["list",["object",{"password":"string","registry_server":"string","user_assigned_identity_id":"string","user_name":"string"}]],"optional":true,"at_least_one_of":["container_configuration.0.type","container_configuration.0.container_image_names","container_configuration.0.container_registries"]},"type":{"type":"string","optional":true,"at_least_one_of":["container_configuration.0.type","container_configuration.0.container_image_names","container_configuration.0.container_registries"]}}},"optional":true},"data_disks":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","optional":true,"default":"ReadOnly"},"disk_size_gb":{"type":"number","required":true},"lun":{"type":"number","required":true},"storage_account_type":{"type":"string","optional":true,"default":"Standard_LRS"}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"disk_encryption_target":{"type":"string","required":true}}},"optional":true},"extensions":{"nesting_mode":3,"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true},"automatic_upgrade_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"provision_after_extensions":{"type":["set","string"],"optional":true},"publisher":{"type":"string","required":true},"settings_json":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","optional":true}}},"optional":true},"fixed_scale":{"nesting_mode":3,"block":{"attributes":{"node_deallocation_method":{"type":"string","optional":true},"resize_timeout":{"type":"string","optional":true,"default":"PT15M"},"target_dedicated_nodes":{"type":"number","optional":true,"default":1},"target_low_priority_nodes":{"type":"number","optional":true,"default":0}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"mount":{"nesting_mode":3,"block":{"block_types":{"azure_blob_file_system":{"nesting_mode":3,"block":{"attributes":{"account_key":{"type":"string","optional":true},"account_name":{"type":"string","required":true},"blobfuse_options":{"type":"string","optional":true},"container_name":{"type":"string","required":true},"identity_id":{"type":"string","optional":true},"relative_mount_path":{"type":"string","required":true},"sas_key":{"type":"string","optional":true}}},"optional":true},"azure_file_share":{"nesting_mode":3,"block":{"attributes":{"account_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"azure_file_url":{"type":"string","required":true},"mount_options":{"type":"string","optional":true},"relative_mount_path":{"type":"string","required":true}}},"optional":true},"cifs_mount":{"nesting_mode":3,"block":{"attributes":{"mount_options":{"type":"string","optional":true},"password":{"type":"string","required":true},"relative_mount_path":{"type":"string","required":true},"source":{"type":"string","required":true},"user_name":{"type":"string","required":true}}},"optional":true},"nfs_mount":{"nesting_mode":3,"block":{"attributes":{"mount_options":{"type":"string","optional":true},"relative_mount_path":{"type":"string","required":true},"source":{"type":"string","required":true}}},"optional":true}}},"optional":true},"network_configuration":{"nesting_mode":3,"block":{"attributes":{"accelerated_networking_enabled":{"type":"bool","optional":true,"default":false},"dynamic_vnet_assignment_scope":{"type":"string","optional":true,"default":"none"},"public_address_provisioning_type":{"type":"string","optional":true},"public_ips":{"type":["set","string"],"optional":true},"subnet_id":{"type":"string","optional":true}},"block_types":{"endpoint_configuration":{"nesting_mode":3,"block":{"attributes":{"backend_port":{"type":"number","required":true},"frontend_port_range":{"type":"string","required":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true}},"block_types":{"network_security_group_rules":{"nesting_mode":3,"block":{"attributes":{"access":{"type":"string","required":true},"priority":{"type":"number","required":true},"source_address_prefix":{"type":"string","required":true},"source_port_ranges":{"type":["list","string"],"optional":true,"computed":true}}},"optional":true}}},"optional":true}}},"optional":true},"node_placement":{"nesting_mode":3,"block":{"attributes":{"policy":{"type":"string","optional":true,"default":"Regional"}}},"optional":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"host_encryption_enabled":{"type":"bool","optional":true},"secure_boot_enabled":{"type":"bool","optional":true,"required_with":["security_profile.0.security_type"]},"security_type":{"type":"string","optional":true},"vtpm_enabled":{"type":"bool","optional":true,"required_with":["security_profile.0.security_type"]}}},"optional":true},"start_task":{"nesting_mode":3,"block":{"attributes":{"command_line":{"type":"string","required":true},"common_environment_properties":{"type":["map","string"],"optional":true},"task_retry_maximum":{"type":"number","optional":true},"wait_for_success":{"type":"bool","optional":true,"default":false}},"block_types":{"container":{"nesting_mode":3,"block":{"attributes":{"image_name":{"type":"string","required":true},"run_options":{"type":"string","optional":true},"working_directory":{"type":"string","optional":true}},"block_types":{"registry":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"registry_server":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true},"user_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"resource_file":{"nesting_mode":3,"block":{"attributes":{"auto_storage_container_name":{"type":"string","optional":true},"blob_prefix":{"type":"string","optional":true},"file_mode":{"type":"string","optional":true},"file_path":{"type":"string","optional":true},"http_url":{"type":"string","optional":true},"storage_container_url":{"type":"string","optional":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"user_identity":{"nesting_mode":3,"block":{"attributes":{"user_name":{"type":"string","optional":true,"at_least_one_of":["start_task.0.user_identity.0.user_name","start_task.0.user_identity.0.auto_user"]}},"block_types":{"auto_user":{"nesting_mode":3,"block":{"attributes":{"elevation_level":{"type":"string","optional":true,"default":"NonAdmin"},"scope":{"type":"string","optional":true,"default":"Task"}}},"optional":true,"at_least_one_of":["start_task.0.user_identity.0.user_name","start_task.0.user_identity.0.auto_user"]}}},"required":true}}},"optional":true},"storage_image_reference":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","optional":true,"at_least_one_of":["storage_image_reference.0.id","storage_image_reference.0.publisher","storage_image_reference.0.offer","storage_image_reference.0.sku","storage_image_reference.0.version"]},"offer":{"type":"string","optional":true,"at_least_one_of":["storage_image_reference.0.id","storage_image_reference.0.publisher","storage_image_reference.0.offer","storage_image_reference.0.sku","storage_image_reference.0.version"]},"publisher":{"type":"string","optional":true,"at_least_one_of":["storage_image_reference.0.id","storage_image_reference.0.publisher","storage_image_reference.0.offer","storage_image_reference.0.sku","storage_image_reference.0.version"]},"sku":{"type":"string","optional":true,"at_least_one_of":["storage_image_reference.0.id","storage_image_reference.0.publisher","storage_image_reference.0.offer","storage_image_reference.0.sku","storage_image_reference.0.version"]},"version":{"type":"string","optional":true,"at_least_one_of":["storage_image_reference.0.id","storage_image_reference.0.publisher","storage_image_reference.0.offer","storage_image_reference.0.sku","storage_image_reference.0.version"]}}},"required":true},"task_scheduling_policy":{"nesting_mode":3,"block":{"attributes":{"node_fill_type":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"user_accounts":{"nesting_mode":3,"block":{"attributes":{"elevation_level":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true}},"block_types":{"linux_user_configuration":{"nesting_mode":3,"block":{"attributes":{"gid":{"type":"number","optional":true},"ssh_private_key":{"type":"string","optional":true},"uid":{"type":"number","optional":true}}},"optional":true},"windows_user_configuration":{"nesting_mode":3,"block":{"attributes":{"login_mode":{"type":"string","required":true}}},"optional":true}}},"optional":true},"windows":{"nesting_mode":3,"block":{"attributes":{"enable_automatic_updates":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_billing_account_cost_management_export":{"block":{"attributes":{"active":{"type":"bool","optional":true,"default":true},"billing_account_id":{"type":"string","required":true},"file_format":{"type":"string","optional":true,"default":"Csv"},"name":{"type":"string","required":true},"recurrence_period_end_date":{"type":"string","required":true},"recurrence_period_start_date":{"type":"string","required":true},"recurrence_type":{"type":"string","required":true}},"block_types":{"export_data_options":{"nesting_mode":3,"block":{"attributes":{"time_frame":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true},"export_data_storage_location":{"nesting_mode":3,"block":{"attributes":{"container_id":{"type":"string","required":true},"root_folder_path":{"type":"string","required":true}}},"required":true}}}},"azurerm_blueprint_assignment":{"block":{"attributes":{"blueprint_name":{"type":"string","computed":true},"description":{"type":"string","computed":true},"display_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"lock_exclude_actions":{"type":["list","string"],"optional":true},"lock_exclude_principals":{"type":["list","string"],"optional":true},"lock_mode":{"type":"string","optional":true,"default":"None"},"name":{"type":"string","required":true},"parameter_values":{"type":"string","optional":true},"resource_groups":{"type":"string","optional":true},"target_subscription_id":{"type":"string","required":true},"type":{"type":"string","computed":true},"version_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_bot_channel_alexa":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"skill_id":{"type":"string","required":true}}}},"azurerm_bot_channel_direct_line_speech":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"cognitive_account_id":{"type":"string","optional":true},"cognitive_service_access_key":{"type":"string","required":true},"cognitive_service_location":{"type":"string","required":true},"custom_speech_model_id":{"type":"string","optional":true},"custom_voice_deployment_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_bot_channel_directline":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"site":{"nesting_mode":4,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"endpoint_parameters_enabled":{"type":"bool","optional":true},"enhanced_authentication_enabled":{"type":"bool","optional":true,"default":false},"id":{"type":"string","computed":true},"key":{"type":"string","computed":true},"key2":{"type":"string","computed":true},"name":{"type":"string","required":true},"storage_enabled":{"type":"bool","optional":true,"default":true},"trusted_origins":{"type":["set","string"],"optional":true},"user_upload_enabled":{"type":"bool","optional":true,"default":true},"v1_allowed":{"type":"bool","optional":true,"default":true},"v3_allowed":{"type":"bool","optional":true,"default":true}}},"required":true}}}},"azurerm_bot_channel_email":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"email_address":{"type":"string","required":true},"email_password":{"type":"string","optional":true,"exactly_one_of":["email_password","magic_code"]},"location":{"type":"string","required":true},"magic_code":{"type":"string","optional":true,"exactly_one_of":["email_password","magic_code"]},"resource_group_name":{"type":"string","required":true}}}},"azurerm_bot_channel_facebook":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"facebook_application_id":{"type":"string","required":true},"facebook_application_secret":{"type":"string","required":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"page":{"nesting_mode":4,"block":{"attributes":{"access_token":{"type":"string","required":true},"id":{"type":"string","required":true}}},"required":true}}}},"azurerm_bot_channel_line":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"line_channel":{"nesting_mode":4,"block":{"attributes":{"access_token":{"type":"string","required":true},"secret":{"type":"string","required":true}}},"required":true}}}},"azurerm_bot_channel_ms_teams":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"calling_web_hook":{"type":"string","optional":true,"computed":true},"deployment_environment":{"type":"string","optional":true,"default":"CommercialDeployment"},"enable_calling":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_bot_channel_slack":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"landing_page_url":{"type":"string","optional":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"signing_secret":{"type":"string","optional":true},"verification_token":{"type":"string","required":true}}}},"azurerm_bot_channel_sms":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"location":{"type":"string","required":true},"phone_number":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sms_channel_account_security_id":{"type":"string","required":true},"sms_channel_auth_token":{"type":"string","required":true}}}},"azurerm_bot_channel_web_chat":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"site":{"nesting_mode":4,"block":{"attributes":{"endpoint_parameters_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"storage_enabled":{"type":"bool","optional":true,"default":true},"user_upload_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_bot_channels_registration":{"block":{"attributes":{"cmk_key_vault_url":{"type":"string","optional":true},"description":{"type":"string","optional":true},"developer_app_insights_api_key":{"type":"string","optional":true},"developer_app_insights_application_id":{"type":"string","optional":true},"developer_app_insights_key":{"type":"string","optional":true},"display_name":{"type":"string","optional":true,"computed":true},"endpoint":{"type":"string","optional":true},"icon_url":{"type":"string","optional":true,"default":"https://docs.botframework.com/static/devportal/client/images/bot-framework-default.png"},"location":{"type":"string","required":true},"microsoft_app_id":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"streaming_endpoint_enabled":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_bot_connection":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":"string","optional":true},"service_provider_name":{"type":"string","required":true}}}},"azurerm_bot_service_azure_bot":{"block":{"attributes":{"cmk_key_vault_key_url":{"type":"string","optional":true},"developer_app_insights_api_key":{"type":"string","optional":true},"developer_app_insights_application_id":{"type":"string","optional":true},"developer_app_insights_key":{"type":"string","optional":true},"display_name":{"type":"string","optional":true,"computed":true},"endpoint":{"type":"string","optional":true},"icon_url":{"type":"string","optional":true,"default":"https://docs.botframework.com/static/devportal/client/images/bot-framework-default.png"},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"luis_app_ids":{"type":["list","string"],"optional":true},"luis_key":{"type":"string","optional":true},"microsoft_app_id":{"type":"string","required":true},"microsoft_app_msi_id":{"type":"string","optional":true},"microsoft_app_tenant_id":{"type":"string","optional":true},"microsoft_app_type":{"type":"string","optional":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"streaming_endpoint_enabled":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_bot_web_app":{"block":{"attributes":{"developer_app_insights_api_key":{"type":"string","optional":true},"developer_app_insights_application_id":{"type":"string","optional":true},"developer_app_insights_key":{"type":"string","optional":true},"display_name":{"type":"string","optional":true,"computed":true},"endpoint":{"type":"string","optional":true},"location":{"type":"string","required":true},"luis_app_ids":{"type":["list","string"],"optional":true},"luis_key":{"type":"string","optional":true},"microsoft_app_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_capacity_reservation":{"block":{"attributes":{"capacity_reservation_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone":{"type":"string","optional":true}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_capacity_reservation_group":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_cdn_endpoint":{"block":{"attributes":{"content_types_to_compress":{"type":["set","string"],"optional":true},"fqdn":{"type":"string","computed":true},"is_compression_enabled":{"type":"bool","optional":true},"is_http_allowed":{"type":"bool","optional":true,"default":true},"is_https_allowed":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"optimization_type":{"type":"string","optional":true},"origin_host_header":{"type":"string","optional":true},"origin_path":{"type":"string","optional":true},"probe_path":{"type":"string","optional":true},"profile_name":{"type":"string","required":true},"querystring_caching_behaviour":{"type":"string","optional":true,"default":"IgnoreQueryString"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"delivery_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"order":{"type":"number","required":true}},"block_types":{"cache_expiration_action":{"nesting_mode":3,"block":{"attributes":{"behavior":{"type":"string","required":true},"duration":{"type":"string","optional":true}}},"optional":true},"cache_key_query_string_action":{"nesting_mode":3,"block":{"attributes":{"behavior":{"type":"string","required":true},"parameters":{"type":"string","optional":true}}},"optional":true},"cookies_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"device_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"http_version_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"modify_request_header_action":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"modify_response_header_action":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"post_arg_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"query_string_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"remote_address_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true}}},"optional":true},"request_body_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"request_header_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"request_method_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"request_scheme_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"request_uri_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"url_file_extension_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"url_file_name_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"url_path_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"url_redirect_action":{"nesting_mode":3,"block":{"attributes":{"fragment":{"type":"string","optional":true},"hostname":{"type":"string","optional":true},"path":{"type":"string","optional":true},"protocol":{"type":"string","optional":true,"default":"MatchRequest"},"query_string":{"type":"string","optional":true},"redirect_type":{"type":"string","required":true}}},"optional":true},"url_rewrite_action":{"nesting_mode":3,"block":{"attributes":{"destination":{"type":"string","required":true},"preserve_unmatched_path":{"type":"bool","optional":true,"default":true},"source_pattern":{"type":"string","required":true}}},"optional":true}}},"optional":true},"geo_filter":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"country_codes":{"type":["list","string"],"required":true},"relative_path":{"type":"string","required":true}}},"optional":true},"global_delivery_rule":{"nesting_mode":3,"block":{"block_types":{"cache_expiration_action":{"nesting_mode":3,"block":{"attributes":{"behavior":{"type":"string","required":true},"duration":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]},"cache_key_query_string_action":{"nesting_mode":3,"block":{"attributes":{"behavior":{"type":"string","required":true},"parameters":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]},"modify_request_header_action":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]},"modify_response_header_action":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]},"url_redirect_action":{"nesting_mode":3,"block":{"attributes":{"fragment":{"type":"string","optional":true},"hostname":{"type":"string","optional":true},"path":{"type":"string","optional":true},"protocol":{"type":"string","optional":true,"default":"MatchRequest"},"query_string":{"type":"string","optional":true},"redirect_type":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]},"url_rewrite_action":{"nesting_mode":3,"block":{"attributes":{"destination":{"type":"string","required":true},"preserve_unmatched_path":{"type":"bool","optional":true,"default":true},"source_pattern":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]}}},"optional":true},"origin":{"nesting_mode":4,"block":{"attributes":{"host_name":{"type":"string","required":true},"http_port":{"type":"number","optional":true,"default":80},"https_port":{"type":"number","optional":true,"default":443},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_cdn_endpoint_custom_domain":{"block":{"attributes":{"cdn_endpoint_id":{"type":"string","required":true},"host_name":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"cdn_managed_https":{"nesting_mode":3,"block":{"attributes":{"certificate_type":{"type":"string","required":true},"protocol_type":{"type":"string","required":true},"tls_version":{"type":"string","optional":true,"default":"TLS12"}}},"optional":true,"conflicts_with":["user_managed_https"]},"user_managed_https":{"nesting_mode":3,"block":{"attributes":{"key_vault_secret_id":{"type":"string","required":true},"tls_version":{"type":"string","optional":true,"default":"TLS12"}}},"optional":true,"conflicts_with":["cdn_managed_https"]}}}},"azurerm_cdn_frontdoor_custom_domain":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"dns_zone_id":{"type":"string","optional":true},"expiration_date":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"name":{"type":"string","required":true},"validation_token":{"type":"string","computed":true}},"block_types":{"tls":{"nesting_mode":3,"block":{"attributes":{"cdn_frontdoor_secret_id":{"type":"string","optional":true,"computed":true},"certificate_type":{"type":"string","optional":true,"default":"ManagedCertificate"},"minimum_tls_version":{"type":"string","optional":true,"default":"TLS12"}}},"required":true}}}},"azurerm_cdn_frontdoor_custom_domain_association":{"block":{"attributes":{"cdn_frontdoor_custom_domain_id":{"type":"string","required":true},"cdn_frontdoor_route_ids":{"type":["list","string"],"required":true}}}},"azurerm_cdn_frontdoor_endpoint":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"host_name":{"type":"string","computed":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_cdn_frontdoor_firewall_policy":{"block":{"attributes":{"custom_block_response_body":{"type":"string","optional":true},"custom_block_response_status_code":{"type":"number","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"frontend_endpoint_ids":{"type":["list","string"],"computed":true},"js_challenge_cookie_expiration_in_minutes":{"type":"number","optional":true,"computed":true},"mode":{"type":"string","required":true},"name":{"type":"string","required":true},"redirect_url":{"type":"string","optional":true},"request_body_check_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"custom_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":1},"rate_limit_duration_in_minutes":{"type":"number","optional":true,"default":1},"rate_limit_threshold":{"type":"number","optional":true,"default":10},"type":{"type":"string","required":true}},"block_types":{"match_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"required":true},"match_variable":{"type":"string","required":true},"negation_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","optional":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"log_scrubbing":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"scrubbing_rule":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"match_variable":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"Equals"},"selector":{"type":"string","optional":true}}},"required":true}}},"optional":true},"managed_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"type":{"type":"string","required":true},"version":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true},"override":{"nesting_mode":3,"block":{"attributes":{"rule_group_name":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true},"rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":false},"rule_id":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_cdn_frontdoor_origin":{"block":{"attributes":{"cdn_frontdoor_origin_group_id":{"type":"string","required":true},"certificate_name_check_enabled":{"type":"bool","required":true},"enabled":{"type":"bool","optional":true,"default":true},"host_name":{"type":"string","required":true},"http_port":{"type":"number","optional":true,"default":80},"https_port":{"type":"number","optional":true,"default":443},"name":{"type":"string","required":true},"origin_host_header":{"type":"string","optional":true},"priority":{"type":"number","optional":true,"default":1},"weight":{"type":"number","optional":true,"default":500}},"block_types":{"private_link":{"nesting_mode":3,"block":{"attributes":{"location":{"type":"string","required":true},"private_link_target_id":{"type":"string","required":true},"request_message":{"type":"string","optional":true,"default":"Access request for CDN FrontDoor Private Link Origin"},"target_type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_cdn_frontdoor_origin_group":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"name":{"type":"string","required":true},"restore_traffic_time_to_healed_or_new_endpoint_in_minutes":{"type":"number","optional":true,"default":10},"session_affinity_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"health_probe":{"nesting_mode":3,"block":{"attributes":{"interval_in_seconds":{"type":"number","required":true},"path":{"type":"string","optional":true,"default":"/"},"protocol":{"type":"string","required":true},"request_type":{"type":"string","optional":true,"default":"HEAD"}}},"optional":true},"load_balancing":{"nesting_mode":3,"block":{"attributes":{"additional_latency_in_milliseconds":{"type":"number","optional":true,"default":50},"sample_size":{"type":"number","optional":true,"default":4},"successful_samples_required":{"type":"number","optional":true,"default":3}}},"required":true}}}},"azurerm_cdn_frontdoor_profile":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_guid":{"type":"string","computed":true},"response_timeout_seconds":{"type":"number","optional":true,"default":120},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"log_scrubbing_rule":{"nesting_mode":4,"block":{"attributes":{"match_variable":{"type":"string","required":true}}},"optional":true}}}},"azurerm_cdn_frontdoor_route":{"block":{"attributes":{"cdn_frontdoor_custom_domain_ids":{"type":["set","string"],"optional":true},"cdn_frontdoor_endpoint_id":{"type":"string","required":true},"cdn_frontdoor_origin_group_id":{"type":"string","required":true},"cdn_frontdoor_origin_ids":{"type":["list","string"],"required":true},"cdn_frontdoor_origin_path":{"type":"string","optional":true},"cdn_frontdoor_rule_set_ids":{"type":["set","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"forwarding_protocol":{"type":"string","optional":true,"default":"MatchRequest"},"https_redirect_enabled":{"type":"bool","optional":true,"default":true},"link_to_default_domain":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"patterns_to_match":{"type":["list","string"],"required":true},"supported_protocols":{"type":["set","string"],"required":true}},"block_types":{"cache":{"nesting_mode":3,"block":{"attributes":{"compression_enabled":{"type":"bool","optional":true,"default":false},"content_types_to_compress":{"type":["list","string"],"optional":true},"query_string_caching_behavior":{"type":"string","optional":true,"default":"IgnoreQueryString"},"query_strings":{"type":["list","string"],"optional":true}}},"optional":true}}}},"azurerm_cdn_frontdoor_rule":{"block":{"attributes":{"behavior_on_match":{"type":"string","optional":true,"default":"Continue"},"cdn_frontdoor_rule_set_id":{"type":"string","required":true},"cdn_frontdoor_rule_set_name":{"type":"string","computed":true},"name":{"type":"string","required":true},"order":{"type":"number","required":true}},"block_types":{"actions":{"nesting_mode":3,"block":{"block_types":{"request_header_action":{"nesting_mode":3,"block":{"attributes":{"header_action":{"type":"string","required":true},"header_name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"response_header_action":{"nesting_mode":3,"block":{"attributes":{"header_action":{"type":"string","required":true},"header_name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"route_configuration_override_action":{"nesting_mode":3,"block":{"attributes":{"cache_behavior":{"type":"string","optional":true},"cache_duration":{"type":"string","optional":true},"cdn_frontdoor_origin_group_id":{"type":"string","optional":true},"compression_enabled":{"type":"bool","optional":true},"forwarding_protocol":{"type":"string","optional":true},"query_string_caching_behavior":{"type":"string","optional":true},"query_string_parameters":{"type":["list","string"],"optional":true}}},"optional":true},"url_redirect_action":{"nesting_mode":3,"block":{"attributes":{"destination_fragment":{"type":"string","optional":true,"default":""},"destination_hostname":{"type":"string","required":true},"destination_path":{"type":"string","optional":true,"default":""},"query_string":{"type":"string","optional":true,"default":""},"redirect_protocol":{"type":"string","optional":true,"default":"MatchRequest"},"redirect_type":{"type":"string","required":true}}},"optional":true},"url_rewrite_action":{"nesting_mode":3,"block":{"attributes":{"destination":{"type":"string","required":true},"preserve_unmatched_path":{"type":"bool","optional":true,"default":false},"source_pattern":{"type":"string","required":true}}},"optional":true}}},"required":true},"conditions":{"nesting_mode":3,"block":{"block_types":{"client_port_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true}}},"optional":true},"cookies_condition":{"nesting_mode":3,"block":{"attributes":{"cookie_name":{"type":"string","required":true},"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"host_name_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"http_version_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"is_device_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"post_args_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"post_args_name":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"query_string_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"remote_address_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"IPMatch"}}},"optional":true},"request_body_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"request_header_condition":{"nesting_mode":3,"block":{"attributes":{"header_name":{"type":"string","required":true},"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"request_method_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"request_scheme_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"request_uri_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"server_port_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true}}},"optional":true},"socket_address_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"IPMatch"}}},"optional":true},"ssl_protocol_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"url_file_extension_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"url_filename_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"url_path_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_cdn_frontdoor_rule_set":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_cdn_frontdoor_secret":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"cdn_frontdoor_profile_name":{"type":"string","computed":true},"name":{"type":"string","required":true}},"block_types":{"secret":{"nesting_mode":3,"block":{"block_types":{"customer_certificate":{"nesting_mode":3,"block":{"attributes":{"key_vault_certificate_id":{"type":"string","required":true},"subject_alternative_names":{"type":["list","string"],"computed":true}}},"required":true}}},"required":true}}}},"azurerm_cdn_frontdoor_security_policy":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"security_policies":{"nesting_mode":3,"block":{"block_types":{"firewall":{"nesting_mode":3,"block":{"attributes":{"cdn_frontdoor_firewall_policy_id":{"type":"string","required":true}},"block_types":{"association":{"nesting_mode":3,"block":{"attributes":{"patterns_to_match":{"type":["list","string"],"required":true}},"block_types":{"domain":{"nesting_mode":3,"block":{"attributes":{"active":{"type":"bool","computed":true},"cdn_frontdoor_domain_id":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true}}},"required":true}}}},"azurerm_cdn_profile":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_chaos_studio_capability":{"block":{"attributes":{"capability_type":{"type":"string","required":true},"chaos_studio_target_id":{"type":"string","required":true},"urn":{"type":"string","computed":true}}}},"azurerm_chaos_studio_experiment":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"selectors":{"nesting_mode":3,"block":{"attributes":{"chaos_studio_target_ids":{"type":["list","string"],"required":true},"name":{"type":"string","required":true}}},"required":true},"steps":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"branch":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"actions":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true},"duration":{"type":"string","optional":true},"parameters":{"type":["map","string"],"optional":true},"selector_name":{"type":"string","optional":true},"urn":{"type":"string","optional":true}}},"required":true}}},"required":true}}},"required":true}}}},"azurerm_chaos_studio_target":{"block":{"attributes":{"location":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"target_type":{"type":"string","required":true}}}},"azurerm_cognitive_account":{"block":{"attributes":{"custom_question_answering_search_service_id":{"type":"string","optional":true},"custom_question_answering_search_service_key":{"type":"string","optional":true},"custom_subdomain_name":{"type":"string","optional":true},"dynamic_throttling_enabled":{"type":"bool","optional":true},"endpoint":{"type":"string","computed":true},"fqdns":{"type":["list","string"],"optional":true},"kind":{"type":"string","required":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"metrics_advisor_aad_client_id":{"type":"string","optional":true},"metrics_advisor_aad_tenant_id":{"type":"string","optional":true},"metrics_advisor_super_user_name":{"type":"string","optional":true},"metrics_advisor_website_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"outbound_network_access_restricted":{"type":"bool","optional":true,"default":false},"primary_access_key":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"qna_runtime_endpoint":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_acls":{"nesting_mode":3,"block":{"attributes":{"bypass":{"type":"string","optional":true},"default_action":{"type":"string","required":true},"ip_rules":{"type":["set","string"],"optional":true}},"block_types":{"virtual_network_rules":{"nesting_mode":4,"block":{"attributes":{"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"required_with":["custom_subdomain_name"]},"storage":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"storage_account_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_cognitive_account_customer_managed_key":{"block":{"attributes":{"cognitive_account_id":{"type":"string","required":true},"identity_client_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","required":true}}}},"azurerm_cognitive_account_rai_blocklist":{"block":{"attributes":{"cognitive_account_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true}}}},"azurerm_cognitive_account_rai_policy":{"block":{"attributes":{"base_policy_name":{"type":"string","required":true},"cognitive_account_id":{"type":"string","required":true},"mode":{"type":"string","optional":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"content_filter":{"nesting_mode":3,"block":{"attributes":{"block_enabled":{"type":"bool","required":true},"filter_enabled":{"type":"bool","required":true},"name":{"type":"string","required":true},"severity_threshold":{"type":"string","required":true},"source":{"type":"string","required":true}}},"required":true}}}},"azurerm_cognitive_deployment":{"block":{"attributes":{"cognitive_account_id":{"type":"string","required":true},"dynamic_throttling_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"rai_policy_name":{"type":"string","optional":true},"version_upgrade_option":{"type":"string","optional":true,"default":"OnceNewDefaultVersionAvailable"}},"block_types":{"model":{"nesting_mode":3,"block":{"attributes":{"format":{"type":"string","required":true},"name":{"type":"string","required":true},"version":{"type":"string","optional":true}}},"required":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"default":1},"family":{"type":"string","optional":true},"name":{"type":"string","required":true},"size":{"type":"string","optional":true},"tier":{"type":"string","optional":true}}},"required":true}}}},"azurerm_communication_service":{"block":{"attributes":{"data_location":{"type":"string","optional":true,"default":"United States"},"hostname":{"type":"string","computed":true},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_communication_service_email_domain_association":{"block":{"attributes":{"communication_service_id":{"type":"string","required":true},"email_service_domain_id":{"type":"string","required":true}}}},"azurerm_confidential_ledger":{"block":{"attributes":{"identity_service_endpoint":{"type":"string","computed":true},"ledger_endpoint":{"type":"string","computed":true},"ledger_type":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"azuread_based_service_principal":{"nesting_mode":3,"block":{"attributes":{"ledger_role_name":{"type":"string","required":true},"principal_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}},"required":true},"certificate_based_security_principal":{"nesting_mode":3,"block":{"attributes":{"ledger_role_name":{"type":"string","required":true},"pem_public_key":{"type":"string","required":true}}},"optional":true}}}},"azurerm_consumption_budget_management_group":{"block":{"attributes":{"amount":{"type":"number","required":true},"etag":{"type":"string","optional":true,"computed":true},"management_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"time_grain":{"type":"string","optional":true,"default":"Monthly"}},"block_types":{"filter":{"nesting_mode":3,"block":{"block_types":{"dimension":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]},"tag":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]}}},"optional":true},"notification":{"nesting_mode":4,"block":{"attributes":{"contact_emails":{"type":["list","string"],"required":true},"enabled":{"type":"bool","optional":true,"default":true},"operator":{"type":"string","required":true},"threshold":{"type":"number","required":true},"threshold_type":{"type":"string","optional":true,"default":"Actual"}}},"required":true},"time_period":{"nesting_mode":3,"block":{"attributes":{"end_date":{"type":"string","optional":true,"computed":true},"start_date":{"type":"string","required":true}}},"required":true}}}},"azurerm_consumption_budget_resource_group":{"block":{"attributes":{"amount":{"type":"number","required":true},"etag":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"resource_group_id":{"type":"string","required":true},"time_grain":{"type":"string","optional":true,"default":"Monthly"}},"block_types":{"filter":{"nesting_mode":3,"block":{"block_types":{"dimension":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]},"tag":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]}}},"optional":true},"notification":{"nesting_mode":4,"block":{"attributes":{"contact_emails":{"type":["list","string"],"optional":true},"contact_groups":{"type":["list","string"],"optional":true},"contact_roles":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"operator":{"type":"string","required":true},"threshold":{"type":"number","required":true},"threshold_type":{"type":"string","optional":true,"default":"Actual"}}},"required":true},"time_period":{"nesting_mode":3,"block":{"attributes":{"end_date":{"type":"string","optional":true,"computed":true},"start_date":{"type":"string","required":true}}},"required":true}}}},"azurerm_consumption_budget_subscription":{"block":{"attributes":{"amount":{"type":"number","required":true},"etag":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"subscription_id":{"type":"string","required":true},"time_grain":{"type":"string","optional":true,"default":"Monthly"}},"block_types":{"filter":{"nesting_mode":3,"block":{"block_types":{"dimension":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]},"tag":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]}}},"optional":true},"notification":{"nesting_mode":4,"block":{"attributes":{"contact_emails":{"type":["list","string"],"optional":true},"contact_groups":{"type":["list","string"],"optional":true},"contact_roles":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"operator":{"type":"string","required":true},"threshold":{"type":"number","required":true},"threshold_type":{"type":"string","optional":true,"default":"Actual"}}},"required":true},"time_period":{"nesting_mode":3,"block":{"attributes":{"end_date":{"type":"string","optional":true,"computed":true},"start_date":{"type":"string","required":true}}},"required":true}}}},"azurerm_container_app":{"block":{"attributes":{"container_app_environment_id":{"type":"string","required":true},"custom_domain_verification_id":{"type":"string","computed":true},"latest_revision_fqdn":{"type":"string","computed":true},"latest_revision_name":{"type":"string","computed":true},"location":{"type":"string","computed":true},"max_inactive_revisions":{"type":"number","optional":true},"name":{"type":"string","required":true},"outbound_ip_addresses":{"type":["list","string"],"computed":true},"resource_group_name":{"type":"string","required":true},"revision_mode":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workload_profile_name":{"type":"string","optional":true}},"block_types":{"dapr":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_port":{"type":"number","optional":true},"app_protocol":{"type":"string","optional":true,"default":"http"}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"ingress":{"nesting_mode":3,"block":{"attributes":{"allow_insecure_connections":{"type":"bool","optional":true,"default":false},"client_certificate_mode":{"type":"string","optional":true},"custom_domain":{"type":["list",["object",{"certificate_binding_type":"string","certificate_id":"string","name":"string"}]],"computed":true},"exposed_port":{"type":"number","optional":true},"external_enabled":{"type":"bool","optional":true,"default":false},"fqdn":{"type":"string","computed":true},"target_port":{"type":"number","required":true},"transport":{"type":"string","optional":true,"default":"auto"}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allow_credentials_enabled":{"type":"bool","optional":true,"default":false},"allowed_headers":{"type":["list","string"],"optional":true},"allowed_methods":{"type":["list","string"],"optional":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"optional":true},"max_age_in_seconds":{"type":"number","optional":true}}},"optional":true},"ip_security_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"description":{"type":"string","optional":true},"ip_address_range":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true},"traffic_weight":{"nesting_mode":3,"block":{"attributes":{"label":{"type":"string","optional":true},"latest_revision":{"type":"bool","optional":true,"default":false},"percentage":{"type":"number","required":true},"revision_suffix":{"type":"string","optional":true}}},"required":true}}},"optional":true},"registry":{"nesting_mode":3,"block":{"attributes":{"identity":{"type":"string","optional":true},"password_secret_name":{"type":"string","optional":true},"server":{"type":"string","required":true},"username":{"type":"string","optional":true}}},"optional":true},"secret":{"nesting_mode":4,"block":{"attributes":{"identity":{"type":"string","optional":true},"key_vault_secret_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"template":{"nesting_mode":3,"block":{"attributes":{"max_replicas":{"type":"number","optional":true,"default":10},"min_replicas":{"type":"number","optional":true,"default":0},"revision_suffix":{"type":"string","optional":true,"computed":true},"termination_grace_period_seconds":{"type":"number","optional":true,"default":0}},"block_types":{"azure_queue_scale_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"queue_length":{"type":"number","required":true},"queue_name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"secret_name":{"type":"string","required":true},"trigger_parameter":{"type":"string","required":true}}},"required":true}}},"optional":true},"container":{"nesting_mode":3,"block":{"attributes":{"args":{"type":["list","string"],"optional":true},"command":{"type":["list","string"],"optional":true},"cpu":{"type":"number","required":true},"ephemeral_storage":{"type":"string","computed":true},"image":{"type":"string","required":true},"memory":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"env":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"secret_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"liveness_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":1},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"termination_grace_period_seconds":{"type":"number","computed":true},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"readiness_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":0},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"success_count_threshold":{"type":"number","optional":true,"default":3},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"startup_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":0},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"termination_grace_period_seconds":{"type":"number","computed":true},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"volume_mounts":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"path":{"type":"string","required":true},"sub_path":{"type":"string","optional":true}}},"optional":true}}},"required":true},"custom_scale_rule":{"nesting_mode":3,"block":{"attributes":{"custom_rule_type":{"type":"string","required":true},"metadata":{"type":["map","string"],"required":true},"name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"secret_name":{"type":"string","required":true},"trigger_parameter":{"type":"string","required":true}}},"optional":true}}},"optional":true},"http_scale_rule":{"nesting_mode":3,"block":{"attributes":{"concurrent_requests":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"secret_name":{"type":"string","required":true},"trigger_parameter":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"init_container":{"nesting_mode":3,"block":{"attributes":{"args":{"type":["list","string"],"optional":true},"command":{"type":["list","string"],"optional":true},"cpu":{"type":"number","optional":true},"ephemeral_storage":{"type":"string","computed":true},"image":{"type":"string","required":true},"memory":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"env":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"secret_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"volume_mounts":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"path":{"type":"string","required":true},"sub_path":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"tcp_scale_rule":{"nesting_mode":3,"block":{"attributes":{"concurrent_requests":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"secret_name":{"type":"string","required":true},"trigger_parameter":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"volume":{"nesting_mode":3,"block":{"attributes":{"mount_options":{"type":"string","optional":true},"name":{"type":"string","required":true},"storage_name":{"type":"string","optional":true},"storage_type":{"type":"string","optional":true,"default":"EmptyDir"}}},"optional":true}}},"required":true}}}},"azurerm_container_app_custom_domain":{"block":{"attributes":{"certificate_binding_type":{"type":"string","optional":true},"container_app_environment_certificate_id":{"type":"string","optional":true,"required_with":["certificate_binding_type"]},"container_app_environment_managed_certificate_id":{"type":"string","computed":true},"container_app_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_container_app_environment":{"block":{"attributes":{"custom_domain_verification_id":{"type":"string","computed":true},"dapr_application_insights_connection_string":{"type":"string","optional":true},"default_domain":{"type":"string","computed":true},"docker_bridge_cidr":{"type":"string","computed":true},"infrastructure_resource_group_name":{"type":"string","optional":true,"required_with":["workload_profile"]},"infrastructure_subnet_id":{"type":"string","optional":true},"internal_load_balancer_enabled":{"type":"bool","optional":true,"default":false,"required_with":["infrastructure_subnet_id"]},"location":{"type":"string","required":true},"log_analytics_workspace_id":{"type":"string","optional":true},"logs_destination":{"type":"string","optional":true,"computed":true},"mutual_tls_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"platform_reserved_cidr":{"type":"string","computed":true},"platform_reserved_dns_ip_address":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"static_ip_address":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"zone_redundancy_enabled":{"type":"bool","optional":true,"default":false,"required_with":["infrastructure_subnet_id"]}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"workload_profile":{"nesting_mode":4,"block":{"attributes":{"maximum_count":{"type":"number","optional":true},"minimum_count":{"type":"number","optional":true},"name":{"type":"string","required":true},"workload_profile_type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_container_app_environment_certificate":{"block":{"attributes":{"certificate_blob_base64":{"type":"string","required":true},"certificate_password":{"type":"string","required":true},"container_app_environment_id":{"type":"string","required":true},"expiration_date":{"type":"string","computed":true},"issue_date":{"type":"string","computed":true},"issuer":{"type":"string","computed":true},"name":{"type":"string","required":true},"subject_name":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_container_app_environment_custom_domain":{"block":{"attributes":{"certificate_blob_base64":{"type":"string","required":true},"certificate_password":{"type":"string","required":true},"container_app_environment_id":{"type":"string","required":true},"dns_suffix":{"type":"string","required":true}}}},"azurerm_container_app_environment_dapr_component":{"block":{"attributes":{"component_type":{"type":"string","required":true},"container_app_environment_id":{"type":"string","required":true},"ignore_errors":{"type":"bool","optional":true,"default":false},"init_timeout":{"type":"string","optional":true,"default":"5s"},"name":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"version":{"type":"string","required":true}},"block_types":{"metadata":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"secret_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"secret":{"nesting_mode":4,"block":{"attributes":{"identity":{"type":"string","optional":true},"key_vault_secret_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_container_app_environment_storage":{"block":{"attributes":{"access_key":{"type":"string","optional":true,"required_with":["account_name"]},"access_mode":{"type":"string","required":true},"account_name":{"type":"string","optional":true,"conflicts_with":["nfs_server_url"],"required_with":["access_key"]},"container_app_environment_id":{"type":"string","required":true},"name":{"type":"string","required":true},"nfs_server_url":{"type":"string","optional":true,"conflicts_with":["account_name"]},"share_name":{"type":"string","required":true}}}},"azurerm_container_app_job":{"block":{"attributes":{"container_app_environment_id":{"type":"string","required":true},"event_stream_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_addresses":{"type":["list","string"],"computed":true},"replica_retry_limit":{"type":"number","optional":true},"replica_timeout_in_seconds":{"type":"number","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workload_profile_name":{"type":"string","optional":true}},"block_types":{"event_trigger_config":{"nesting_mode":3,"block":{"attributes":{"parallelism":{"type":"number","optional":true,"default":1},"replica_completion_count":{"type":"number","optional":true,"default":1}},"block_types":{"scale":{"nesting_mode":3,"block":{"attributes":{"max_executions":{"type":"number","optional":true,"default":100},"min_executions":{"type":"number","optional":true,"default":0},"polling_interval_in_seconds":{"type":"number","optional":true,"default":30}},"block_types":{"rules":{"nesting_mode":3,"block":{"attributes":{"custom_rule_type":{"type":"string","required":true},"metadata":{"type":["map","string"],"required":true},"name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"secret_name":{"type":"string","required":true},"trigger_parameter":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true}}},"optional":true,"exactly_one_of":["event_trigger_config","manual_trigger_config","schedule_trigger_config"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"manual_trigger_config":{"nesting_mode":3,"block":{"attributes":{"parallelism":{"type":"number","optional":true,"default":1},"replica_completion_count":{"type":"number","optional":true,"default":1}}},"optional":true,"exactly_one_of":["event_trigger_config","manual_trigger_config","schedule_trigger_config"]},"registry":{"nesting_mode":3,"block":{"attributes":{"identity":{"type":"string","optional":true},"password_secret_name":{"type":"string","optional":true},"server":{"type":"string","required":true},"username":{"type":"string","optional":true}}},"optional":true},"schedule_trigger_config":{"nesting_mode":3,"block":{"attributes":{"cron_expression":{"type":"string","required":true},"parallelism":{"type":"number","optional":true,"default":1},"replica_completion_count":{"type":"number","optional":true,"default":1}}},"optional":true,"exactly_one_of":["event_trigger_config","manual_trigger_config","schedule_trigger_config"]},"secret":{"nesting_mode":4,"block":{"attributes":{"identity":{"type":"string","optional":true},"key_vault_secret_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"template":{"nesting_mode":3,"block":{"block_types":{"container":{"nesting_mode":3,"block":{"attributes":{"args":{"type":["list","string"],"optional":true},"command":{"type":["list","string"],"optional":true},"cpu":{"type":"number","required":true},"ephemeral_storage":{"type":"string","computed":true},"image":{"type":"string","required":true},"memory":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"env":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"secret_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"liveness_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":1},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"termination_grace_period_seconds":{"type":"number","computed":true},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"readiness_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":0},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"success_count_threshold":{"type":"number","optional":true,"default":3},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"startup_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":0},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"termination_grace_period_seconds":{"type":"number","computed":true},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"volume_mounts":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"path":{"type":"string","required":true},"sub_path":{"type":"string","optional":true}}},"optional":true}}},"required":true},"init_container":{"nesting_mode":3,"block":{"attributes":{"args":{"type":["list","string"],"optional":true},"command":{"type":["list","string"],"optional":true},"cpu":{"type":"number","optional":true},"ephemeral_storage":{"type":"string","computed":true},"image":{"type":"string","required":true},"memory":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"env":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"secret_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"volume_mounts":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"path":{"type":"string","required":true},"sub_path":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"volume":{"nesting_mode":3,"block":{"attributes":{"mount_options":{"type":"string","optional":true},"name":{"type":"string","required":true},"storage_name":{"type":"string","optional":true},"storage_type":{"type":"string","optional":true,"default":"EmptyDir"}}},"optional":true}}},"required":true}}}},"azurerm_container_connected_registry":{"block":{"attributes":{"audit_log_enabled":{"type":"bool","optional":true,"default":false},"client_token_ids":{"type":["list","string"],"optional":true},"container_registry_id":{"type":"string","required":true},"log_level":{"type":"string","optional":true,"default":"None"},"mode":{"type":"string","optional":true,"default":"ReadWrite"},"name":{"type":"string","required":true},"parent_registry_id":{"type":"string","optional":true},"sync_message_ttl":{"type":"string","optional":true,"default":"P1D"},"sync_schedule":{"type":"string","optional":true,"default":"* * * * *"},"sync_token_id":{"type":"string","required":true},"sync_window":{"type":"string","optional":true}},"block_types":{"notification":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"digest":{"type":"string","optional":true},"name":{"type":"string","required":true},"tag":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_container_group":{"block":{"attributes":{"dns_name_label":{"type":"string","optional":true},"dns_name_label_reuse_policy":{"type":"string","optional":true,"default":"Unsecure"},"exposed_port":{"type":["set",["object",{"port":"number","protocol":"string"}]],"optional":true,"computed":true},"fqdn":{"type":"string","computed":true},"ip_address":{"type":"string","computed":true},"ip_address_type":{"type":"string","optional":true,"default":"Public"},"key_vault_key_id":{"type":"string","optional":true},"key_vault_user_assigned_identity_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_profile_id":{"type":"string","optional":true,"computed":true},"os_type":{"type":"string","required":true},"priority":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"restart_policy":{"type":"string","optional":true,"default":"Always"},"sku":{"type":"string","optional":true,"default":"Standard"},"subnet_ids":{"type":["set","string"],"optional":true,"conflicts_with":["dns_name_label"]},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"container":{"nesting_mode":3,"block":{"attributes":{"commands":{"type":["list","string"],"optional":true,"computed":true},"cpu":{"type":"number","required":true},"cpu_limit":{"type":"number","optional":true},"environment_variables":{"type":["map","string"],"optional":true},"image":{"type":"string","required":true},"memory":{"type":"number","required":true},"memory_limit":{"type":"number","optional":true},"name":{"type":"string","required":true},"secure_environment_variables":{"type":["map","string"],"optional":true}},"block_types":{"liveness_probe":{"nesting_mode":3,"block":{"attributes":{"exec":{"type":["list","string"],"optional":true},"failure_threshold":{"type":"number","optional":true},"initial_delay_seconds":{"type":"number","optional":true},"period_seconds":{"type":"number","optional":true},"success_threshold":{"type":"number","optional":true},"timeout_seconds":{"type":"number","optional":true}},"block_types":{"http_get":{"nesting_mode":3,"block":{"attributes":{"http_headers":{"type":["map","string"],"optional":true},"path":{"type":"string","optional":true},"port":{"type":"number","optional":true},"scheme":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"ports":{"nesting_mode":4,"block":{"attributes":{"port":{"type":"number","optional":true},"protocol":{"type":"string","optional":true,"default":"TCP"}}},"optional":true},"readiness_probe":{"nesting_mode":3,"block":{"attributes":{"exec":{"type":["list","string"],"optional":true},"failure_threshold":{"type":"number","optional":true},"initial_delay_seconds":{"type":"number","optional":true},"period_seconds":{"type":"number","optional":true},"success_threshold":{"type":"number","optional":true},"timeout_seconds":{"type":"number","optional":true}},"block_types":{"http_get":{"nesting_mode":3,"block":{"attributes":{"http_headers":{"type":["map","string"],"optional":true},"path":{"type":"string","optional":true},"port":{"type":"number","optional":true},"scheme":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"security":{"nesting_mode":3,"block":{"attributes":{"privilege_enabled":{"type":"bool","required":true}}},"optional":true},"volume":{"nesting_mode":3,"block":{"attributes":{"empty_dir":{"type":"bool","optional":true,"default":false},"mount_path":{"type":"string","required":true},"name":{"type":"string","required":true},"read_only":{"type":"bool","optional":true,"default":false},"secret":{"type":["map","string"],"optional":true},"share_name":{"type":"string","optional":true},"storage_account_key":{"type":"string","optional":true},"storage_account_name":{"type":"string","optional":true}},"block_types":{"git_repo":{"nesting_mode":3,"block":{"attributes":{"directory":{"type":"string","optional":true},"revision":{"type":"string","optional":true},"url":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"required":true},"diagnostics":{"nesting_mode":3,"block":{"block_types":{"log_analytics":{"nesting_mode":3,"block":{"attributes":{"log_type":{"type":"string","optional":true},"metadata":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true},"workspace_key":{"type":"string","required":true}}},"required":true}}},"optional":true},"dns_config":{"nesting_mode":3,"block":{"attributes":{"nameservers":{"type":["list","string"],"required":true},"options":{"type":["set","string"],"optional":true},"search_domains":{"type":["set","string"],"optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"image_registry_credential":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"server":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true},"username":{"type":"string","optional":true}}},"optional":true},"init_container":{"nesting_mode":3,"block":{"attributes":{"commands":{"type":["list","string"],"optional":true,"computed":true},"environment_variables":{"type":["map","string"],"optional":true},"image":{"type":"string","required":true},"name":{"type":"string","required":true},"secure_environment_variables":{"type":["map","string"],"optional":true}},"block_types":{"security":{"nesting_mode":3,"block":{"attributes":{"privilege_enabled":{"type":"bool","required":true}}},"optional":true},"volume":{"nesting_mode":3,"block":{"attributes":{"empty_dir":{"type":"bool","optional":true,"default":false},"mount_path":{"type":"string","required":true},"name":{"type":"string","required":true},"read_only":{"type":"bool","optional":true,"default":false},"secret":{"type":["map","string"],"optional":true},"share_name":{"type":"string","optional":true},"storage_account_key":{"type":"string","optional":true},"storage_account_name":{"type":"string","optional":true}},"block_types":{"git_repo":{"nesting_mode":3,"block":{"attributes":{"directory":{"type":"string","optional":true},"revision":{"type":"string","optional":true},"url":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_container_registry":{"block":{"attributes":{"admin_enabled":{"type":"bool","optional":true,"default":false},"admin_password":{"type":"string","computed":true},"admin_username":{"type":"string","computed":true},"anonymous_pull_enabled":{"type":"bool","optional":true},"data_endpoint_enabled":{"type":"bool","optional":true},"data_endpoint_host_names":{"type":["set","string"],"computed":true},"encryption":{"type":["list",["object",{"identity_client_id":"string","key_vault_key_id":"string"}]],"optional":true,"computed":true},"export_policy_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"login_server":{"type":"string","computed":true},"name":{"type":"string","required":true},"network_rule_bypass_option":{"type":"string","optional":true,"default":"AzureServices"},"network_rule_set":{"type":["list",["object",{"default_action":"string","ip_rule":["set",["object",{"action":"string","ip_range":"string"}]]}]],"optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"quarantine_policy_enabled":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"retention_policy_in_days":{"type":"number","optional":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"trust_policy_enabled":{"type":"bool","optional":true,"default":false},"zone_redundancy_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"georeplications":{"nesting_mode":3,"block":{"attributes":{"location":{"type":"string","required":true},"regional_endpoint_enabled":{"type":"bool","optional":true},"tags":{"type":["map","string"],"optional":true},"zone_redundancy_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_container_registry_agent_pool":{"block":{"attributes":{"container_registry_name":{"type":"string","required":true},"instance_count":{"type":"number","optional":true,"default":1},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","optional":true,"default":"S1"},"virtual_network_subnet_id":{"type":"string","optional":true}}}},"azurerm_container_registry_cache_rule":{"block":{"attributes":{"container_registry_id":{"type":"string","required":true},"credential_set_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"source_repo":{"type":"string","required":true},"target_repo":{"type":"string","required":true}}}},"azurerm_container_registry_credential_set":{"block":{"attributes":{"container_registry_id":{"type":"string","required":true},"login_server":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"authentication_credentials":{"nesting_mode":3,"block":{"attributes":{"password_secret_id":{"type":"string","required":true},"username_secret_id":{"type":"string","required":true}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_container_registry_scope_map":{"block":{"attributes":{"actions":{"type":["list","string"],"required":true},"container_registry_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_container_registry_task":{"block":{"attributes":{"agent_pool_name":{"type":"string","optional":true,"conflicts_with":["agent_setting"]},"container_registry_id":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"is_system_task":{"type":"bool","optional":true,"default":false},"log_template":{"type":"string","optional":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"timeout_in_seconds":{"type":"number","optional":true,"default":3600}},"block_types":{"agent_setting":{"nesting_mode":3,"block":{"attributes":{"cpu":{"type":"number","required":true}}},"optional":true,"conflicts_with":["agent_pool_name"]},"base_image_trigger":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"type":{"type":"string","required":true},"update_trigger_endpoint":{"type":"string","optional":true},"update_trigger_payload_type":{"type":"string","optional":true}}},"optional":true},"docker_step":{"nesting_mode":3,"block":{"attributes":{"arguments":{"type":["map","string"],"optional":true},"cache_enabled":{"type":"bool","optional":true,"default":true},"context_access_token":{"type":"string","required":true},"context_path":{"type":"string","required":true},"dockerfile_path":{"type":"string","required":true},"image_names":{"type":["list","string"],"optional":true},"push_enabled":{"type":"bool","optional":true,"default":true},"secret_arguments":{"type":["map","string"],"optional":true},"target":{"type":"string","optional":true}}},"optional":true,"conflicts_with":["file_step","encoded_step"]},"encoded_step":{"nesting_mode":3,"block":{"attributes":{"context_access_token":{"type":"string","optional":true},"context_path":{"type":"string","optional":true},"secret_values":{"type":["map","string"],"optional":true},"task_content":{"type":"string","required":true},"value_content":{"type":"string","optional":true},"values":{"type":["map","string"],"optional":true}}},"optional":true,"conflicts_with":["docker_step","file_step"]},"file_step":{"nesting_mode":3,"block":{"attributes":{"context_access_token":{"type":"string","optional":true},"context_path":{"type":"string","optional":true},"secret_values":{"type":["map","string"],"optional":true},"task_file_path":{"type":"string","required":true},"value_file_path":{"type":"string","optional":true},"values":{"type":["map","string"],"optional":true}}},"optional":true,"conflicts_with":["docker_step","encoded_step"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"platform":{"nesting_mode":3,"block":{"attributes":{"architecture":{"type":"string","optional":true},"os":{"type":"string","required":true},"variant":{"type":"string","optional":true}}},"optional":true},"registry_credential":{"nesting_mode":3,"block":{"block_types":{"custom":{"nesting_mode":4,"block":{"attributes":{"identity":{"type":"string","optional":true},"login_server":{"type":"string","required":true},"password":{"type":"string","optional":true},"username":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["registry_credential.0.source","registry_credential.0.custom"]},"source":{"nesting_mode":3,"block":{"attributes":{"login_mode":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["registry_credential.0.source","registry_credential.0.custom"]}}},"optional":true},"source_trigger":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"events":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"repository_url":{"type":"string","required":true},"source_type":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"expire_in_seconds":{"type":"number","optional":true},"refresh_token":{"type":"string","optional":true},"scope":{"type":"string","optional":true},"token":{"type":"string","required":true},"token_type":{"type":"string","required":true}}},"optional":true}}},"optional":true},"timer_trigger":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"schedule":{"type":"string","required":true}}},"optional":true}}}},"azurerm_container_registry_task_schedule_run_now":{"block":{"attributes":{"container_registry_task_id":{"type":"string","required":true}}}},"azurerm_container_registry_token":{"block":{"attributes":{"container_registry_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scope_map_id":{"type":"string","required":true}}}},"azurerm_container_registry_token_password":{"block":{"attributes":{"container_registry_token_id":{"type":"string","required":true}},"block_types":{"password1":{"nesting_mode":3,"block":{"attributes":{"expiry":{"type":"string","optional":true},"value":{"type":"string","computed":true}}},"required":true},"password2":{"nesting_mode":3,"block":{"attributes":{"expiry":{"type":"string","optional":true},"value":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_container_registry_webhook":{"block":{"attributes":{"actions":{"type":["set","string"],"required":true},"custom_headers":{"type":["map","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"registry_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scope":{"type":"string","optional":true,"default":""},"service_uri":{"type":"string","required":true},"status":{"type":"string","optional":true,"default":"enabled"},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_cosmosdb_account":{"block":{"attributes":{"access_key_metadata_writes_enabled":{"type":"bool","optional":true,"default":true},"analytical_storage_enabled":{"type":"bool","optional":true,"default":false},"automatic_failover_enabled":{"type":"bool","optional":true,"default":false},"burst_capacity_enabled":{"type":"bool","optional":true,"default":false},"create_mode":{"type":"string","optional":true,"computed":true},"default_identity_type":{"type":"string","optional":true,"default":"FirstPartyIdentity"},"endpoint":{"type":"string","computed":true},"free_tier_enabled":{"type":"bool","optional":true,"default":false},"ip_range_filter":{"type":["set","string"],"optional":true},"is_virtual_network_filter_enabled":{"type":"bool","optional":true,"default":false},"key_vault_key_id":{"type":"string","optional":true,"conflicts_with":["managed_hsm_key_id"]},"kind":{"type":"string","optional":true,"default":"GlobalDocumentDB"},"local_authentication_disabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"managed_hsm_key_id":{"type":"string","optional":true,"conflicts_with":["key_vault_key_id"]},"minimal_tls_version":{"type":"string","optional":true,"default":"Tls12"},"mongo_server_version":{"type":"string","optional":true,"computed":true},"multiple_write_locations_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"network_acl_bypass_for_azure_services":{"type":"bool","optional":true,"default":false},"network_acl_bypass_ids":{"type":["list","string"],"optional":true},"offer_type":{"type":"string","required":true},"partition_merge_enabled":{"type":"bool","optional":true,"default":false},"primary_key":{"type":"string","computed":true},"primary_mongodb_connection_string":{"type":"string","computed":true},"primary_readonly_key":{"type":"string","computed":true},"primary_readonly_mongodb_connection_string":{"type":"string","computed":true},"primary_readonly_sql_connection_string":{"type":"string","computed":true},"primary_sql_connection_string":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"read_endpoints":{"type":["list","string"],"computed":true},"resource_group_name":{"type":"string","required":true},"secondary_key":{"type":"string","computed":true},"secondary_mongodb_connection_string":{"type":"string","computed":true},"secondary_readonly_key":{"type":"string","computed":true},"secondary_readonly_mongodb_connection_string":{"type":"string","computed":true},"secondary_readonly_sql_connection_string":{"type":"string","computed":true},"secondary_sql_connection_string":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"write_endpoints":{"type":["list","string"],"computed":true}},"block_types":{"analytical_storage":{"nesting_mode":3,"block":{"attributes":{"schema_type":{"type":"string","required":true}}},"optional":true,"computed":true},"backup":{"nesting_mode":3,"block":{"attributes":{"interval_in_minutes":{"type":"number","optional":true,"computed":true},"retention_in_hours":{"type":"number","optional":true,"computed":true},"storage_redundancy":{"type":"string","optional":true,"computed":true},"tier":{"type":"string","optional":true,"computed":true},"type":{"type":"string","required":true}}},"optional":true,"computed":true},"capabilities":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true}}},"optional":true,"computed":true},"capacity":{"nesting_mode":3,"block":{"attributes":{"total_throughput_limit":{"type":"number","required":true}}},"optional":true,"computed":true},"consistency_policy":{"nesting_mode":3,"block":{"attributes":{"consistency_level":{"type":"string","required":true},"max_interval_in_seconds":{"type":"number","optional":true,"default":5},"max_staleness_prefix":{"type":"number","optional":true,"default":100}}},"required":true},"cors_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["list","string"],"required":true},"allowed_methods":{"type":["list","string"],"required":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"required":true},"max_age_in_seconds":{"type":"number","optional":true}}},"optional":true},"geo_location":{"nesting_mode":4,"block":{"attributes":{"failover_priority":{"type":"number","required":true},"id":{"type":"string","computed":true},"location":{"type":"string","required":true},"zone_redundant":{"type":"bool","optional":true,"default":false}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"restore":{"nesting_mode":3,"block":{"attributes":{"restore_timestamp_in_utc":{"type":"string","required":true},"source_cosmosdb_account_id":{"type":"string","required":true},"tables_to_restore":{"type":["list","string"],"optional":true}},"block_types":{"database":{"nesting_mode":4,"block":{"attributes":{"collection_names":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true}}},"optional":true},"gremlin_database":{"nesting_mode":3,"block":{"attributes":{"graph_names":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true}}},"optional":true}}},"optional":true},"virtual_network_rule":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","required":true},"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_cosmosdb_cassandra_cluster":{"block":{"attributes":{"authentication_method":{"type":"string","optional":true,"default":"Cassandra"},"client_certificate_pems":{"type":["list","string"],"optional":true},"default_admin_password":{"type":"string","required":true},"delegated_management_subnet_id":{"type":"string","required":true},"external_gossip_certificate_pems":{"type":["list","string"],"optional":true},"external_seed_node_ip_addresses":{"type":["list","string"],"optional":true},"hours_between_backups":{"type":"number","optional":true,"default":24},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"repair_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true,"default":"3.11"}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_cosmosdb_cassandra_datacenter":{"block":{"attributes":{"availability_zones_enabled":{"type":"bool","optional":true,"default":true},"backup_storage_customer_key_uri":{"type":"string","optional":true},"base64_encoded_yaml_fragment":{"type":"string","optional":true},"cassandra_cluster_id":{"type":"string","required":true},"delegated_management_subnet_id":{"type":"string","required":true},"disk_count":{"type":"number","optional":true},"disk_sku":{"type":"string","optional":true,"default":"P30"},"location":{"type":"string","required":true},"managed_disk_customer_key_uri":{"type":"string","optional":true},"name":{"type":"string","required":true},"node_count":{"type":"number","optional":true,"default":3},"seed_node_ip_addresses":{"type":["list","string"],"computed":true},"sku_name":{"type":"string","optional":true,"default":"Standard_E16s_v5"}}}},"azurerm_cosmosdb_cassandra_keyspace":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true}}}},"azurerm_cosmosdb_cassandra_table":{"block":{"attributes":{"analytical_storage_ttl":{"type":"number","optional":true},"cassandra_keyspace_id":{"type":"string","required":true},"default_ttl":{"type":"number","optional":true},"name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true},"schema":{"nesting_mode":3,"block":{"block_types":{"cluster_key":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"order_by":{"type":"string","required":true}}},"optional":true},"column":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true},"partition_key":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_cosmosdb_gremlin_database":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true}}}},"azurerm_cosmosdb_gremlin_graph":{"block":{"attributes":{"account_name":{"type":"string","required":true},"analytical_storage_ttl":{"type":"number","optional":true},"database_name":{"type":"string","required":true},"default_ttl":{"type":"number","optional":true},"name":{"type":"string","required":true},"partition_key_path":{"type":"string","required":true},"partition_key_version":{"type":"number","optional":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true},"conflict_resolution_policy":{"nesting_mode":3,"block":{"attributes":{"conflict_resolution_path":{"type":"string","optional":true},"conflict_resolution_procedure":{"type":"string","optional":true},"mode":{"type":"string","required":true}}},"optional":true,"computed":true},"index_policy":{"nesting_mode":3,"block":{"attributes":{"automatic":{"type":"bool","optional":true,"default":true},"excluded_paths":{"type":["set","string"],"optional":true,"computed":true},"included_paths":{"type":["set","string"],"optional":true,"computed":true},"indexing_mode":{"type":"string","required":true}},"block_types":{"composite_index":{"nesting_mode":3,"block":{"block_types":{"index":{"nesting_mode":3,"block":{"attributes":{"order":{"type":"string","required":true},"path":{"type":"string","required":true}}},"required":true}}},"optional":true},"spatial_index":{"nesting_mode":3,"block":{"attributes":{"path":{"type":"string","required":true},"types":{"type":["set","string"],"computed":true}}},"optional":true}}},"optional":true,"computed":true},"unique_key":{"nesting_mode":4,"block":{"attributes":{"paths":{"type":["set","string"],"required":true}}},"optional":true}}}},"azurerm_cosmosdb_mongo_collection":{"block":{"attributes":{"account_name":{"type":"string","required":true},"analytical_storage_ttl":{"type":"number","optional":true},"database_name":{"type":"string","required":true},"default_ttl_seconds":{"type":"number","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"shard_key":{"type":"string","optional":true},"system_indexes":{"type":["list",["object",{"keys":["list","string"],"unique":"bool"}]],"computed":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true},"index":{"nesting_mode":4,"block":{"attributes":{"keys":{"type":["list","string"],"required":true},"unique":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_cosmosdb_mongo_database":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true}}}},"azurerm_cosmosdb_mongo_role_definition":{"block":{"attributes":{"cosmos_mongo_database_id":{"type":"string","required":true},"inherited_role_names":{"type":["list","string"],"optional":true},"role_name":{"type":"string","required":true}},"block_types":{"privilege":{"nesting_mode":3,"block":{"attributes":{"actions":{"type":["list","string"],"required":true}},"block_types":{"resource":{"nesting_mode":3,"block":{"attributes":{"collection_name":{"type":"string","optional":true},"db_name":{"type":"string","optional":true}}},"required":true}}},"optional":true}}}},"azurerm_cosmosdb_mongo_user_definition":{"block":{"attributes":{"cosmos_mongo_database_id":{"type":"string","required":true},"inherited_role_names":{"type":["list","string"],"optional":true},"password":{"type":"string","required":true},"username":{"type":"string","required":true}}}},"azurerm_cosmosdb_postgresql_cluster":{"block":{"attributes":{"administrator_login_password":{"type":"string","optional":true},"citus_version":{"type":"string","optional":true,"computed":true},"coordinator_public_ip_access_enabled":{"type":"bool","optional":true,"default":true},"coordinator_server_edition":{"type":"string","optional":true,"default":"GeneralPurpose"},"coordinator_storage_quota_in_mb":{"type":"number","optional":true},"coordinator_vcore_count":{"type":"number","optional":true},"earliest_restore_time":{"type":"string","computed":true},"ha_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"node_count":{"type":"number","required":true},"node_public_ip_access_enabled":{"type":"bool","optional":true,"default":false},"node_server_edition":{"type":"string","optional":true,"default":"MemoryOptimized"},"node_storage_quota_in_mb":{"type":"number","optional":true,"computed":true},"node_vcores":{"type":"number","optional":true,"computed":true},"point_in_time_in_utc":{"type":"string","optional":true,"required_with":["source_location","source_resource_id"]},"preferred_primary_zone":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"servers":{"type":["list",["object",{"fqdn":"string","name":"string"}]],"computed":true},"shards_on_coordinator_enabled":{"type":"bool","optional":true,"computed":true},"source_location":{"type":"string","optional":true,"required_with":["source_resource_id"]},"source_resource_id":{"type":"string","optional":true,"required_with":["source_location"]},"sql_version":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"maintenance_window":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"number","optional":true,"default":0},"start_hour":{"type":"number","optional":true,"default":0},"start_minute":{"type":"number","optional":true,"default":0}}},"optional":true}}}},"azurerm_cosmosdb_postgresql_coordinator_configuration":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_cosmosdb_postgresql_firewall_rule":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_cosmosdb_postgresql_node_configuration":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_cosmosdb_postgresql_role":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true}}}},"azurerm_cosmosdb_sql_container":{"block":{"attributes":{"account_name":{"type":"string","required":true},"analytical_storage_ttl":{"type":"number","optional":true},"database_name":{"type":"string","required":true},"default_ttl":{"type":"number","optional":true},"name":{"type":"string","required":true},"partition_key_kind":{"type":"string","optional":true,"default":"Hash"},"partition_key_paths":{"type":["list","string"],"required":true},"partition_key_version":{"type":"number","optional":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true},"conflict_resolution_policy":{"nesting_mode":3,"block":{"attributes":{"conflict_resolution_path":{"type":"string","optional":true},"conflict_resolution_procedure":{"type":"string","optional":true},"mode":{"type":"string","required":true}}},"optional":true,"computed":true},"indexing_policy":{"nesting_mode":3,"block":{"attributes":{"indexing_mode":{"type":"string","optional":true,"default":"consistent"}},"block_types":{"composite_index":{"nesting_mode":3,"block":{"block_types":{"index":{"nesting_mode":3,"block":{"attributes":{"order":{"type":"string","required":true},"path":{"type":"string","required":true}}},"required":true}}},"optional":true},"excluded_path":{"nesting_mode":3,"block":{"attributes":{"path":{"type":"string","required":true}}},"optional":true},"included_path":{"nesting_mode":3,"block":{"attributes":{"path":{"type":"string","required":true}}},"optional":true},"spatial_index":{"nesting_mode":3,"block":{"attributes":{"path":{"type":"string","required":true},"types":{"type":["set","string"],"computed":true}}},"optional":true}}},"optional":true,"computed":true},"unique_key":{"nesting_mode":4,"block":{"attributes":{"paths":{"type":["set","string"],"required":true}}},"optional":true}}}},"azurerm_cosmosdb_sql_database":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true}}}},"azurerm_cosmosdb_sql_dedicated_gateway":{"block":{"attributes":{"cosmosdb_account_id":{"type":"string","required":true},"instance_count":{"type":"number","required":true},"instance_size":{"type":"string","required":true}}}},"azurerm_cosmosdb_sql_function":{"block":{"attributes":{"body":{"type":"string","required":true},"container_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_cosmosdb_sql_role_assignment":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","optional":true,"computed":true},"principal_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"role_definition_id":{"type":"string","required":true},"scope":{"type":"string","required":true}}}},"azurerm_cosmosdb_sql_role_definition":{"block":{"attributes":{"account_name":{"type":"string","required":true},"assignable_scopes":{"type":["set","string"],"required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"role_definition_id":{"type":"string","optional":true,"computed":true},"type":{"type":"string","optional":true,"default":"CustomRole"}},"block_types":{"permissions":{"nesting_mode":4,"block":{"attributes":{"data_actions":{"type":["set","string"],"required":true}}},"required":true}}}},"azurerm_cosmosdb_sql_stored_procedure":{"block":{"attributes":{"account_name":{"type":"string","required":true},"body":{"type":"string","required":true},"container_name":{"type":"string","required":true},"database_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_cosmosdb_sql_trigger":{"block":{"attributes":{"body":{"type":"string","required":true},"container_id":{"type":"string","required":true},"name":{"type":"string","required":true},"operation":{"type":"string","required":true},"type":{"type":"string","required":true}}}},"azurerm_cosmosdb_table":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true}}}},"azurerm_cost_anomaly_alert":{"block":{"attributes":{"display_name":{"type":"string","required":true},"email_addresses":{"type":["set","string"],"required":true},"email_subject":{"type":"string","required":true},"message":{"type":"string","optional":true},"name":{"type":"string","required":true},"notification_email":{"type":"string","optional":true,"computed":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_cost_management_scheduled_action":{"block":{"attributes":{"day_of_month":{"type":"number","optional":true},"days_of_week":{"type":["list","string"],"optional":true},"display_name":{"type":"string","required":true},"email_address_sender":{"type":"string","required":true},"email_addresses":{"type":["list","string"],"required":true},"email_subject":{"type":"string","required":true},"end_date":{"type":"string","required":true},"frequency":{"type":"string","required":true},"hour_of_day":{"type":"number","optional":true},"message":{"type":"string","optional":true},"name":{"type":"string","required":true},"start_date":{"type":"string","required":true},"view_id":{"type":"string","required":true},"weeks_of_month":{"type":["list","string"],"optional":true}}}},"azurerm_custom_ip_prefix":{"block":{"attributes":{"cidr":{"type":"string","required":true},"commissioning_enabled":{"type":"bool","optional":true,"default":false},"internet_advertising_disabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"parent_custom_ip_prefix_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"roa_validity_end_date":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"wan_validation_signed_message":{"type":"string","optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_custom_provider":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"action":{"nesting_mode":4,"block":{"attributes":{"endpoint":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["resource_type","action"]},"resource_type":{"nesting_mode":4,"block":{"attributes":{"endpoint":{"type":"string","required":true},"name":{"type":"string","required":true},"routing_type":{"type":"string","optional":true,"default":"Proxy"}}},"optional":true,"at_least_one_of":["resource_type","action"]},"validation":{"nesting_mode":4,"block":{"attributes":{"specification":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dashboard_grafana":{"block":{"attributes":{"api_key_enabled":{"type":"bool","optional":true,"default":false},"auto_generated_domain_name_label_scope":{"type":"string","optional":true,"default":"TenantReuse"},"deterministic_outbound_ip_enabled":{"type":"bool","optional":true,"default":false},"endpoint":{"type":"string","computed":true},"grafana_major_version":{"type":"string","required":true},"grafana_version":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip":{"type":["list","string"],"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Standard"},"tags":{"type":["map","string"],"optional":true},"zone_redundancy_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"azure_monitor_workspace_integrations":{"nesting_mode":3,"block":{"attributes":{"resource_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"smtp":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":false},"from_address":{"type":"string","required":true},"from_name":{"type":"string","optional":true,"default":"Azure Managed Grafana Notification"},"host":{"type":"string","required":true},"password":{"type":"string","required":true},"start_tls_policy":{"type":"string","required":true},"user":{"type":"string","required":true},"verification_skip_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_dashboard_grafana_managed_private_endpoint":{"block":{"attributes":{"grafana_id":{"type":"string","required":true},"group_ids":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_link_resource_id":{"type":"string","required":true},"private_link_resource_region":{"type":"string","optional":true},"private_link_service_url":{"type":"string","optional":true},"request_message":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory":{"block":{"attributes":{"customer_managed_key_id":{"type":"string","optional":true,"computed":true},"customer_managed_key_identity_id":{"type":"string","optional":true,"computed":true,"required_with":["customer_managed_key_id"]},"location":{"type":"string","required":true},"managed_virtual_network_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"public_network_enabled":{"type":"bool","optional":true,"default":true},"purview_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"github_configuration":{"nesting_mode":3,"block":{"attributes":{"account_name":{"type":"string","required":true},"branch_name":{"type":"string","required":true},"git_url":{"type":"string","optional":true},"publishing_enabled":{"type":"bool","optional":true,"default":true},"repository_name":{"type":"string","required":true},"root_folder":{"type":"string","required":true}}},"optional":true,"conflicts_with":["vsts_configuration"]},"global_parameter":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"vsts_configuration":{"nesting_mode":3,"block":{"attributes":{"account_name":{"type":"string","required":true},"branch_name":{"type":"string","required":true},"project_name":{"type":"string","required":true},"publishing_enabled":{"type":"bool","optional":true,"default":true},"repository_name":{"type":"string","required":true},"root_folder":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["github_configuration"]}}}},"azurerm_data_factory_credential_service_principal":{"block":{"attributes":{"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"service_principal_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}},"block_types":{"service_principal_key":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true},"secret_version":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_credential_user_managed_identity":{"block":{"attributes":{"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"identity_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_data_factory_custom_dataset":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"schema_json":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_properties_json":{"type":"string","required":true}},"block_types":{"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"required":true}}}},"azurerm_data_factory_customer_managed_key":{"block":{"attributes":{"customer_managed_key_id":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}}},"azurerm_data_factory_data_flow":{"block":{"attributes":{"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"name":{"type":"string","required":true},"script":{"type":"string","optional":true,"at_least_one_of":["script","script_lines"]},"script_lines":{"type":["list","string"],"optional":true,"at_least_one_of":["script","script_lines"]}},"block_types":{"sink":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"rejected_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"schema_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"required":true},"source":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"rejected_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"schema_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"required":true},"transformation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_azure_blob":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"path":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_azure_sql_table":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_id":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"schema":{"type":"string","optional":true},"table":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_binary":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"azure_blob_storage_location":{"nesting_mode":3,"block":{"attributes":{"container":{"type":"string","required":true},"dynamic_container_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","optional":true},"path":{"type":"string","optional":true}}},"optional":true,"conflicts_with":["http_server_location","sftp_server_location"]},"compression":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true},"http_server_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","required":true},"relative_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_blob_storage_location","sftp_server_location"]},"sftp_server_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_blob_storage_location","http_server_location"]}}}},"azurerm_data_factory_dataset_cosmosdb_sqlapi":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"collection_name":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_delimited_text":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"column_delimiter":{"type":"string","optional":true,"default":","},"compression_codec":{"type":"string","optional":true},"compression_level":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"encoding":{"type":"string","optional":true},"escape_character":{"type":"string","optional":true,"default":"\\"},"first_row_as_header":{"type":"bool","optional":true,"default":false},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"null_value":{"type":"string","optional":true,"default":""},"parameters":{"type":["map","string"],"optional":true},"quote_character":{"type":"string","optional":true,"default":"\""},"row_delimiter":{"type":"string","optional":true}},"block_types":{"azure_blob_fs_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_file_system_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"file_system":{"type":"string","optional":true},"filename":{"type":"string","optional":true},"path":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["http_server_location","azure_blob_storage_location","azure_blob_fs_location"]},"azure_blob_storage_location":{"nesting_mode":3,"block":{"attributes":{"container":{"type":"string","required":true},"dynamic_container_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","optional":true},"path":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["http_server_location","azure_blob_storage_location","azure_blob_fs_location"]},"http_server_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","required":true},"relative_url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["http_server_location","azure_blob_storage_location","azure_blob_fs_location"]},"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_http":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"relative_url":{"type":"string","optional":true},"request_body":{"type":"string","optional":true},"request_method":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_json":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"encoding":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"azure_blob_storage_location":{"nesting_mode":3,"block":{"attributes":{"container":{"type":"string","required":true},"dynamic_container_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","required":true}}},"optional":true,"conflicts_with":["http_server_location"]},"http_server_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","required":true},"relative_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_blob_storage_location"]},"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_mysql":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"table_name":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_parquet":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"compression_codec":{"type":"string","optional":true},"compression_level":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"azure_blob_fs_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_file_system_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"file_system":{"type":"string","optional":true},"filename":{"type":"string","optional":true},"path":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["azure_blob_fs_location","azure_blob_storage_location","http_server_location"]},"azure_blob_storage_location":{"nesting_mode":3,"block":{"attributes":{"container":{"type":"string","required":true},"dynamic_container_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","optional":true},"path":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["azure_blob_fs_location","azure_blob_storage_location","http_server_location"]},"http_server_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","optional":true},"relative_url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["azure_blob_fs_location","azure_blob_storage_location","http_server_location"]},"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_postgresql":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"table_name":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_snowflake":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"schema_name":{"type":"string","optional":true},"table_name":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"precision":{"type":"number","optional":true},"scale":{"type":"number","optional":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_sql_server_table":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"table_name":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_flowlet_data_flow":{"block":{"attributes":{"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"name":{"type":"string","required":true},"script":{"type":"string","optional":true,"at_least_one_of":["script","script_lines"]},"script_lines":{"type":["list","string"],"optional":true,"at_least_one_of":["script","script_lines"]}},"block_types":{"sink":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"rejected_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"schema_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"optional":true},"source":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"rejected_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"schema_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"optional":true},"transformation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_data_factory_integration_runtime_azure":{"block":{"attributes":{"cleanup_enabled":{"type":"bool","optional":true,"default":true},"compute_type":{"type":"string","optional":true,"default":"General"},"core_count":{"type":"number","optional":true,"default":8},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"time_to_live_min":{"type":"number","optional":true,"default":0},"virtual_network_enabled":{"type":"bool","optional":true}}}},"azurerm_data_factory_integration_runtime_azure_ssis":{"block":{"attributes":{"credential_name":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"edition":{"type":"string","optional":true,"default":"Standard"},"license_type":{"type":"string","optional":true,"default":"LicenseIncluded"},"location":{"type":"string","required":true},"max_parallel_executions_per_node":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"node_size":{"type":"string","required":true},"number_of_nodes":{"type":"number","optional":true,"default":1}},"block_types":{"catalog_info":{"nesting_mode":3,"block":{"attributes":{"administrator_login":{"type":"string","optional":true},"administrator_password":{"type":"string","optional":true},"dual_standby_pair_name":{"type":"string","optional":true},"elastic_pool_name":{"type":"string","optional":true,"conflicts_with":["catalog_info.0.pricing_tier"]},"pricing_tier":{"type":"string","optional":true,"conflicts_with":["catalog_info.0.elastic_pool_name"]},"server_endpoint":{"type":"string","required":true}}},"optional":true},"copy_compute_scale":{"nesting_mode":3,"block":{"attributes":{"data_integration_unit":{"type":"number","optional":true},"time_to_live":{"type":"number","optional":true}}},"optional":true},"custom_setup_script":{"nesting_mode":3,"block":{"attributes":{"blob_container_uri":{"type":"string","required":true},"sas_token":{"type":"string","required":true}}},"optional":true},"express_custom_setup":{"nesting_mode":3,"block":{"attributes":{"environment":{"type":["map","string"],"optional":true,"at_least_one_of":["express_custom_setup.0.environment","express_custom_setup.0.powershell_version","express_custom_setup.0.component","express_custom_setup.0.command_key"]},"powershell_version":{"type":"string","optional":true,"at_least_one_of":["express_custom_setup.0.environment","express_custom_setup.0.powershell_version","express_custom_setup.0.component","express_custom_setup.0.command_key"]}},"block_types":{"command_key":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"target_name":{"type":"string","required":true},"user_name":{"type":"string","required":true}},"block_types":{"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"secret_name":{"type":"string","required":true},"secret_version":{"type":"string","optional":true}}},"optional":true}}},"optional":true,"at_least_one_of":["express_custom_setup.0.environment","express_custom_setup.0.powershell_version","express_custom_setup.0.component","express_custom_setup.0.command_key"]},"component":{"nesting_mode":3,"block":{"attributes":{"license":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"key_vault_license":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"secret_name":{"type":"string","required":true},"secret_version":{"type":"string","optional":true}}},"optional":true}}},"optional":true,"at_least_one_of":["express_custom_setup.0.environment","express_custom_setup.0.powershell_version","express_custom_setup.0.component","express_custom_setup.0.command_key"]}}},"optional":true},"express_vnet_integration":{"nesting_mode":3,"block":{"attributes":{"subnet_id":{"type":"string","required":true}}},"optional":true},"package_store":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true},"pipeline_external_compute_scale":{"nesting_mode":3,"block":{"attributes":{"number_of_external_nodes":{"type":"number","optional":true},"number_of_pipeline_nodes":{"type":"number","optional":true},"time_to_live":{"type":"number","optional":true}}},"optional":true},"proxy":{"nesting_mode":3,"block":{"attributes":{"path":{"type":"string","optional":true},"self_hosted_integration_runtime_name":{"type":"string","required":true},"staging_storage_linked_service_name":{"type":"string","required":true}}},"optional":true},"vnet_integration":{"nesting_mode":3,"block":{"attributes":{"public_ips":{"type":["list","string"],"optional":true},"subnet_id":{"type":"string","optional":true,"exactly_one_of":["vnet_integration.0.vnet_id","vnet_integration.0.subnet_id"]},"subnet_name":{"type":"string","optional":true,"required_with":["vnet_integration.0.vnet_id"]},"vnet_id":{"type":"string","optional":true,"exactly_one_of":["vnet_integration.0.vnet_id","vnet_integration.0.subnet_id"]}}},"optional":true}}}},"azurerm_data_factory_integration_runtime_self_hosted":{"block":{"attributes":{"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"primary_authorization_key":{"type":"string","computed":true},"secondary_authorization_key":{"type":"string","computed":true},"self_contained_interactive_authoring_enabled":{"type":"bool","optional":true}},"block_types":{"rbac_authorization":{"nesting_mode":4,"block":{"attributes":{"resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_custom_service":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"type_properties_json":{"type":"string","required":true}},"block_types":{"integration_runtime":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_azure_blob_storage":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","optional":true,"exactly_one_of":["connection_string","connection_string_insecure","sas_uri","service_endpoint"]},"connection_string_insecure":{"type":"string","optional":true,"exactly_one_of":["connection_string","connection_string_insecure","sas_uri","service_endpoint"]},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"sas_uri":{"type":"string","optional":true,"exactly_one_of":["connection_string","connection_string_insecure","sas_uri","service_endpoint"]},"service_endpoint":{"type":"string","optional":true,"exactly_one_of":["connection_string","connection_string_insecure","sas_uri","service_endpoint"]},"service_principal_id":{"type":"string","optional":true,"conflicts_with":["use_managed_identity"]},"service_principal_key":{"type":"string","optional":true},"storage_kind":{"type":"string","optional":true},"tenant_id":{"type":"string","optional":true},"use_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["service_principal_id"]}},"block_types":{"key_vault_sas_token":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true},"service_principal_linked_key_vault_key":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_azure_databricks":{"block":{"attributes":{"access_token":{"type":"string","optional":true,"exactly_one_of":["access_token","msi_work_space_resource_id","key_vault_password"]},"adb_domain":{"type":"string","required":true},"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"existing_cluster_id":{"type":"string","optional":true,"exactly_one_of":["existing_cluster_id","new_cluster_config","instance_pool"]},"integration_runtime_name":{"type":"string","optional":true},"msi_work_space_resource_id":{"type":"string","optional":true,"exactly_one_of":["access_token","msi_work_space_resource_id","key_vault_password"]},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"instance_pool":{"nesting_mode":3,"block":{"attributes":{"cluster_version":{"type":"string","required":true},"instance_pool_id":{"type":"string","required":true},"max_number_of_workers":{"type":"number","optional":true},"min_number_of_workers":{"type":"number","optional":true,"default":1}}},"optional":true,"exactly_one_of":["existing_cluster_id","new_cluster_config","instance_pool"]},"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["access_token","msi_work_space_resource_id","key_vault_password"]},"new_cluster_config":{"nesting_mode":3,"block":{"attributes":{"cluster_version":{"type":"string","required":true},"custom_tags":{"type":["map","string"],"optional":true},"driver_node_type":{"type":"string","optional":true},"init_scripts":{"type":["list","string"],"optional":true},"log_destination":{"type":"string","optional":true},"max_number_of_workers":{"type":"number","optional":true},"min_number_of_workers":{"type":"number","optional":true,"default":1},"node_type":{"type":"string","required":true},"spark_config":{"type":["map","string"],"optional":true},"spark_environment_variables":{"type":["map","string"],"optional":true}}},"optional":true,"exactly_one_of":["existing_cluster_id","new_cluster_config","instance_pool"]}}}},"azurerm_data_factory_linked_service_azure_file_storage":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"file_share":{"type":"string","optional":true},"host":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"password":{"type":"string","optional":true},"user_id":{"type":"string","optional":true}},"block_types":{"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_azure_function":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"key":{"type":"string","optional":true,"exactly_one_of":["key","key_vault_key"]},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"url":{"type":"string","required":true}},"block_types":{"key_vault_key":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["key","key_vault_key"]}}}},"azurerm_data_factory_linked_service_azure_search":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted_credential":{"type":"string","computed":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"search_service_key":{"type":"string","required":true},"url":{"type":"string","required":true}}}},"azurerm_data_factory_linked_service_azure_sql_database":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","optional":true,"exactly_one_of":["connection_string","key_vault_connection_string"]},"credential_name":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"service_principal_id":{"type":"string","optional":true,"conflicts_with":["use_managed_identity"],"required_with":["service_principal_key"]},"service_principal_key":{"type":"string","optional":true,"required_with":["service_principal_id"]},"tenant_id":{"type":"string","optional":true},"use_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["service_principal_id"]}},"block_types":{"key_vault_connection_string":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["connection_string","key_vault_connection_string"]},"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_azure_table_storage":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_linked_service_cosmosdb":{"block":{"attributes":{"account_endpoint":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"account_key":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","optional":true,"conflicts_with":["account_endpoint","account_key"]},"data_factory_id":{"type":"string","required":true},"database":{"type":"string","optional":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_linked_service_cosmosdb_mongoapi":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"database":{"type":"string","optional":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"server_version_is_32_or_higher":{"type":"bool","optional":true,"default":false}}}},"azurerm_data_factory_linked_service_data_lake_storage_gen2":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"service_principal_id":{"type":"string","optional":true,"conflicts_with":["storage_account_key","use_managed_identity"],"at_least_one_of":["service_principal_key","service_principal_id","tenant","storage_account_key","use_managed_identity"],"required_with":["service_principal_key","tenant"]},"service_principal_key":{"type":"string","optional":true,"conflicts_with":["storage_account_key","use_managed_identity"],"at_least_one_of":["service_principal_key","service_principal_id","tenant","storage_account_key","use_managed_identity"],"required_with":["service_principal_id","tenant"]},"storage_account_key":{"type":"string","optional":true,"conflicts_with":["service_principal_id","service_principal_key","use_managed_identity","tenant"],"at_least_one_of":["service_principal_key","service_principal_id","tenant","storage_account_key","use_managed_identity"]},"tenant":{"type":"string","optional":true,"conflicts_with":["storage_account_key","use_managed_identity"],"at_least_one_of":["service_principal_key","service_principal_id","tenant","storage_account_key","use_managed_identity"],"required_with":["service_principal_id","service_principal_key"]},"url":{"type":"string","required":true},"use_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["service_principal_key","service_principal_id","storage_account_key","tenant"],"at_least_one_of":["service_principal_key","service_principal_id","tenant","storage_account_key","use_managed_identity"]}}}},"azurerm_data_factory_linked_service_key_vault":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"key_vault_id":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_linked_service_kusto":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"kusto_database_name":{"type":"string","required":true},"kusto_endpoint":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"service_principal_id":{"type":"string","optional":true,"exactly_one_of":["service_principal_id","use_managed_identity"],"required_with":["service_principal_key"]},"service_principal_key":{"type":"string","optional":true,"required_with":["service_principal_id"]},"tenant":{"type":"string","optional":true,"required_with":["service_principal_id"]},"use_managed_identity":{"type":"bool","optional":true,"default":false,"exactly_one_of":["service_principal_id","use_managed_identity"]}}}},"azurerm_data_factory_linked_service_mysql":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_linked_service_odata":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"url":{"type":"string","required":true}},"block_types":{"basic_authentication":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_odbc":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"basic_authentication":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_postgresql":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_linked_service_sftp":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"authentication_type":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"host":{"type":"string","required":true},"host_key_fingerprint":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"password":{"type":"string","optional":true,"exactly_one_of":["password","key_vault_password","private_key_content_base64","key_vault_private_key_content_base64","private_key_path"]},"port":{"type":"number","required":true},"private_key_content_base64":{"type":"string","optional":true},"private_key_passphrase":{"type":"string","optional":true,"conflicts_with":["password","key_vault_password","key_vault_private_key_passphrase"]},"private_key_path":{"type":"string","optional":true},"skip_host_key_validation":{"type":"bool","optional":true},"username":{"type":"string","required":true}},"block_types":{"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true},"key_vault_private_key_content_base64":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true},"key_vault_private_key_passphrase":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["password","key_vault_password","private_key_passphrase"]}}}},"azurerm_data_factory_linked_service_snowflake":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_sql_server":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","optional":true,"exactly_one_of":["connection_string","key_vault_connection_string"]},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"user_name":{"type":"string","optional":true}},"block_types":{"key_vault_connection_string":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["connection_string","key_vault_connection_string"]},"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_synapse":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_web":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"authentication_type":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"password":{"type":"string","optional":true},"url":{"type":"string","required":true},"username":{"type":"string","optional":true}}}},"azurerm_data_factory_managed_private_endpoint":{"block":{"attributes":{"data_factory_id":{"type":"string","required":true},"fqdns":{"type":["list","string"],"optional":true,"computed":true},"name":{"type":"string","required":true},"subresource_name":{"type":"string","optional":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_data_factory_pipeline":{"block":{"attributes":{"activities_json":{"type":"string","optional":true},"annotations":{"type":["list","string"],"optional":true},"concurrency":{"type":"number","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"moniter_metrics_after_duration":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"variables":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_trigger_blob_event":{"block":{"attributes":{"activated":{"type":"bool","optional":true,"default":true},"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"blob_path_begins_with":{"type":"string","optional":true,"at_least_one_of":["blob_path_begins_with","blob_path_ends_with"]},"blob_path_ends_with":{"type":"string","optional":true,"at_least_one_of":["blob_path_begins_with","blob_path_ends_with"]},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"events":{"type":["set","string"],"required":true},"ignore_empty_blobs":{"type":"bool","optional":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}},"block_types":{"pipeline":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"required":true}}}},"azurerm_data_factory_trigger_custom_event":{"block":{"attributes":{"activated":{"type":"bool","optional":true,"default":true},"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"eventgrid_topic_id":{"type":"string","required":true},"events":{"type":["set","string"],"required":true},"name":{"type":"string","required":true},"subject_begins_with":{"type":"string","optional":true},"subject_ends_with":{"type":"string","optional":true}},"block_types":{"pipeline":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"required":true}}}},"azurerm_data_factory_trigger_schedule":{"block":{"attributes":{"activated":{"type":"bool","optional":true,"default":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"end_time":{"type":"string","optional":true},"frequency":{"type":"string","optional":true,"default":"Minute"},"interval":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"pipeline_name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["pipeline","pipeline_name"]},"pipeline_parameters":{"type":["map","string"],"optional":true,"computed":true,"conflicts_with":["pipeline"]},"start_time":{"type":"string","optional":true,"computed":true},"time_zone":{"type":"string","optional":true}},"block_types":{"pipeline":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true,"computed":true,"conflicts_with":["pipeline_parameters"],"exactly_one_of":["pipeline","pipeline_name"]},"schedule":{"nesting_mode":3,"block":{"attributes":{"days_of_month":{"type":["list","number"],"optional":true},"days_of_week":{"type":["list","string"],"optional":true},"hours":{"type":["list","number"],"optional":true},"minutes":{"type":["list","number"],"optional":true}},"block_types":{"monthly":{"nesting_mode":3,"block":{"attributes":{"week":{"type":"number","optional":true},"weekday":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_data_factory_trigger_tumbling_window":{"block":{"attributes":{"activated":{"type":"bool","optional":true,"default":true},"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"delay":{"type":"string","optional":true},"description":{"type":"string","optional":true},"end_time":{"type":"string","optional":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","required":true},"max_concurrency":{"type":"number","optional":true,"default":50},"name":{"type":"string","required":true},"start_time":{"type":"string","required":true}},"block_types":{"pipeline":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"required":true},"retry":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"number","optional":true,"default":30}}},"optional":true},"trigger_dependency":{"nesting_mode":4,"block":{"attributes":{"offset":{"type":"string","optional":true},"size":{"type":"string","optional":true},"trigger_name":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_protection_backup_instance_blob_storage":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_account_container_names":{"type":["list","string"],"optional":true},"storage_account_id":{"type":"string","required":true},"vault_id":{"type":"string","required":true}}}},"azurerm_data_protection_backup_instance_disk":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"disk_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"snapshot_resource_group_name":{"type":"string","required":true},"snapshot_subscription_id":{"type":"string","optional":true},"vault_id":{"type":"string","required":true}}}},"azurerm_data_protection_backup_instance_kubernetes_cluster":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"kubernetes_cluster_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"snapshot_resource_group_name":{"type":"string","required":true},"vault_id":{"type":"string","required":true}},"block_types":{"backup_datasource_parameters":{"nesting_mode":3,"block":{"attributes":{"cluster_scoped_resources_enabled":{"type":"bool","optional":true,"default":false},"excluded_namespaces":{"type":["list","string"],"optional":true},"excluded_resource_types":{"type":["list","string"],"optional":true},"included_namespaces":{"type":["list","string"],"optional":true},"included_resource_types":{"type":["list","string"],"optional":true},"label_selectors":{"type":["list","string"],"optional":true},"volume_snapshot_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_data_protection_backup_instance_mysql_flexible_server":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true},"vault_id":{"type":"string","required":true}}}},"azurerm_data_protection_backup_instance_postgresql":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"database_credential_key_vault_secret_id":{"type":"string","optional":true},"database_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"vault_id":{"type":"string","required":true}}}},"azurerm_data_protection_backup_instance_postgresql_flexible_server":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true},"vault_id":{"type":"string","required":true}}}},"azurerm_data_protection_backup_policy_blob_storage":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"operational_default_retention_duration":{"type":"string","optional":true,"at_least_one_of":["operational_default_retention_duration","vault_default_retention_duration"]},"time_zone":{"type":"string","optional":true},"vault_default_retention_duration":{"type":"string","optional":true,"at_least_one_of":["operational_default_retention_duration","vault_default_retention_duration"],"required_with":["backup_repeating_time_intervals"]},"vault_id":{"type":"string","required":true}},"block_types":{"retention_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true},"days_of_month":{"type":["set","number"],"optional":true},"days_of_week":{"type":["set","string"],"optional":true},"months_of_year":{"type":["set","string"],"optional":true},"scheduled_backup_times":{"type":["set","string"],"optional":true},"weeks_of_month":{"type":["set","string"],"optional":true}}},"required":true},"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"optional":true,"required_with":["vault_default_retention_duration"]}}}},"azurerm_data_protection_backup_policy_disk":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"required":true},"default_retention_duration":{"type":"string","required":true},"name":{"type":"string","required":true},"time_zone":{"type":"string","optional":true},"vault_id":{"type":"string","required":true}},"block_types":{"retention_rule":{"nesting_mode":3,"block":{"attributes":{"duration":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true}}},"required":true}}},"optional":true}}}},"azurerm_data_protection_backup_policy_kubernetes_cluster":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"time_zone":{"type":"string","optional":true},"vault_name":{"type":"string","required":true}},"block_types":{"default_retention_rule":{"nesting_mode":3,"block":{"block_types":{"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"required":true},"retention_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true},"days_of_week":{"type":["set","string"],"optional":true},"months_of_year":{"type":["set","string"],"optional":true},"scheduled_backup_times":{"type":["set","string"],"optional":true},"weeks_of_month":{"type":["set","string"],"optional":true}}},"required":true},"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_data_protection_backup_policy_mysql_flexible_server":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"time_zone":{"type":"string","optional":true},"vault_id":{"type":"string","required":true}},"block_types":{"default_retention_rule":{"nesting_mode":3,"block":{"block_types":{"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"required":true},"retention_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true},"days_of_week":{"type":["set","string"],"optional":true},"months_of_year":{"type":["set","string"],"optional":true},"scheduled_backup_times":{"type":["set","string"],"optional":true},"weeks_of_month":{"type":["set","string"],"optional":true}}},"required":true},"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_data_protection_backup_policy_postgresql":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"required":true},"default_retention_duration":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"time_zone":{"type":"string","optional":true},"vault_name":{"type":"string","required":true}},"block_types":{"retention_rule":{"nesting_mode":3,"block":{"attributes":{"duration":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true},"days_of_week":{"type":["set","string"],"optional":true},"months_of_year":{"type":["set","string"],"optional":true},"scheduled_backup_times":{"type":["set","string"],"optional":true},"weeks_of_month":{"type":["set","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_data_protection_backup_policy_postgresql_flexible_server":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"time_zone":{"type":"string","optional":true},"vault_id":{"type":"string","required":true}},"block_types":{"default_retention_rule":{"nesting_mode":3,"block":{"block_types":{"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"required":true},"retention_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true},"days_of_week":{"type":["set","string"],"optional":true},"months_of_year":{"type":["set","string"],"optional":true},"scheduled_backup_times":{"type":["set","string"],"optional":true},"weeks_of_month":{"type":["set","string"],"optional":true}}},"required":true},"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_data_protection_backup_vault":{"block":{"attributes":{"cross_region_restore_enabled":{"type":"bool","optional":true},"datastore_type":{"type":"string","required":true},"immutability":{"type":"string","optional":true,"default":"Disabled"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"redundancy":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"retention_duration_in_days":{"type":"number","optional":true,"default":14},"soft_delete":{"type":"string","optional":true,"default":"On"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_protection_backup_vault_customer_managed_key":{"block":{"attributes":{"data_protection_backup_vault_id":{"type":"string","required":true},"key_vault_key_id":{"type":"string","required":true}}}},"azurerm_data_protection_resource_guard":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"vault_critical_operation_exclusion_list":{"type":["list","string"],"optional":true}}}},"azurerm_data_share":{"block":{"attributes":{"account_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"kind":{"type":"string","required":true},"name":{"type":"string","required":true},"terms":{"type":"string","optional":true}},"block_types":{"snapshot_schedule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"recurrence":{"type":"string","required":true},"start_time":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_share_account":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_data_share_dataset_blob_storage":{"block":{"attributes":{"container_name":{"type":"string","required":true},"data_share_id":{"type":"string","required":true},"display_name":{"type":"string","computed":true},"file_path":{"type":"string","optional":true,"conflicts_with":["folder_path"]},"folder_path":{"type":"string","optional":true,"conflicts_with":["file_path"]},"name":{"type":"string","required":true}},"block_types":{"storage_account":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_data_share_dataset_data_lake_gen2":{"block":{"attributes":{"display_name":{"type":"string","computed":true},"file_path":{"type":"string","optional":true,"conflicts_with":["folder_path"]},"file_system_name":{"type":"string","required":true},"folder_path":{"type":"string","optional":true,"conflicts_with":["file_path"]},"name":{"type":"string","required":true},"share_id":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}}},"azurerm_data_share_dataset_kusto_cluster":{"block":{"attributes":{"display_name":{"type":"string","computed":true},"kusto_cluster_id":{"type":"string","required":true},"kusto_cluster_location":{"type":"string","computed":true},"name":{"type":"string","required":true},"share_id":{"type":"string","required":true}}}},"azurerm_data_share_dataset_kusto_database":{"block":{"attributes":{"display_name":{"type":"string","computed":true},"kusto_cluster_location":{"type":"string","computed":true},"kusto_database_id":{"type":"string","required":true},"name":{"type":"string","required":true},"share_id":{"type":"string","required":true}}}},"azurerm_database_migration_project":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"service_name":{"type":"string","required":true},"source_platform":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_platform":{"type":"string","required":true}}}},"azurerm_database_migration_service":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_databox_edge_device":{"block":{"attributes":{"device_properties":{"type":["list",["object",{"capacity":"number","configured_role_types":["list","string"],"culture":"string","hcs_version":"string","model":"string","node_count":"number","serial_number":"string","software_version":"string","status":"string","time_zone":"string","type":"string"}]],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_databricks_access_connector":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_databricks_virtual_network_peering":{"block":{"attributes":{"address_space_prefixes":{"type":["list","string"],"computed":true},"allow_forwarded_traffic":{"type":"bool","optional":true,"default":false},"allow_gateway_transit":{"type":"bool","optional":true,"default":false},"allow_virtual_network_access":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"remote_address_space_prefixes":{"type":["list","string"],"required":true},"remote_virtual_network_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"use_remote_gateways":{"type":"bool","optional":true,"default":false},"virtual_network_id":{"type":"string","computed":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_databricks_workspace":{"block":{"attributes":{"access_connector_id":{"type":"string","optional":true,"required_with":["default_storage_firewall_enabled"]},"customer_managed_key_enabled":{"type":"bool","optional":true,"default":false},"default_storage_firewall_enabled":{"type":"bool","optional":true,"required_with":["access_connector_id"]},"disk_encryption_set_id":{"type":"string","computed":true},"infrastructure_encryption_enabled":{"type":"bool","optional":true,"default":false},"load_balancer_backend_address_pool_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"managed_disk_cmk_key_vault_id":{"type":"string","optional":true},"managed_disk_cmk_key_vault_key_id":{"type":"string","optional":true},"managed_disk_cmk_rotation_to_latest_version_enabled":{"type":"bool","optional":true,"required_with":["managed_disk_cmk_key_vault_key_id"]},"managed_disk_identity":{"type":["list",["object",{"principal_id":"string","tenant_id":"string","type":"string"}]],"computed":true},"managed_resource_group_id":{"type":"string","computed":true},"managed_resource_group_name":{"type":"string","optional":true,"computed":true},"managed_services_cmk_key_vault_id":{"type":"string","optional":true},"managed_services_cmk_key_vault_key_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_security_group_rules_required":{"type":"string","optional":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"storage_account_identity":{"type":["list",["object",{"principal_id":"string","tenant_id":"string","type":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","computed":true},"workspace_url":{"type":"string","computed":true}},"block_types":{"custom_parameters":{"nesting_mode":3,"block":{"attributes":{"machine_learning_workspace_id":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"nat_gateway_name":{"type":"string","optional":true,"computed":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"no_public_ip":{"type":"bool","optional":true,"default":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"private_subnet_name":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"private_subnet_network_security_group_association_id":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"public_ip_name":{"type":"string","optional":true,"computed":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"public_subnet_name":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"public_subnet_network_security_group_association_id":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"storage_account_name":{"type":"string","optional":true,"computed":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"storage_account_sku_name":{"type":"string","optional":true,"computed":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"virtual_network_id":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"vnet_address_prefix":{"type":"string","optional":true,"computed":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]}}},"optional":true,"computed":true},"enhanced_security_compliance":{"nesting_mode":3,"block":{"attributes":{"automatic_cluster_update_enabled":{"type":"bool","optional":true,"default":false},"compliance_security_profile_enabled":{"type":"bool","optional":true,"default":false},"compliance_security_profile_standards":{"type":["set","string"],"optional":true},"enhanced_security_monitoring_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_databricks_workspace_customer_managed_key":{"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_databricks_workspace_root_dbfs_customer_managed_key":{"block":{"attributes":{"key_vault_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_datadog_monitor":{"block":{"attributes":{"location":{"type":"string","required":true},"marketplace_subscription_status":{"type":"string","computed":true},"monitoring_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"datadog_organization":{"nesting_mode":3,"block":{"attributes":{"api_key":{"type":"string","required":true},"application_key":{"type":"string","required":true},"enterprise_app_id":{"type":"string","optional":true},"id":{"type":"string","computed":true},"linking_auth_code":{"type":"string","optional":true},"linking_client_id":{"type":"string","optional":true},"name":{"type":"string","computed":true},"redirect_uri":{"type":"string","optional":true}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"user":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","required":true},"name":{"type":"string","required":true},"phone_number":{"type":"string","optional":true}}},"required":true}}}},"azurerm_datadog_monitor_sso_configuration":{"block":{"attributes":{"datadog_monitor_id":{"type":"string","required":true},"enterprise_application_id":{"type":"string","required":true},"login_url":{"type":"string","computed":true},"name":{"type":"string","optional":true,"default":"default"},"single_sign_on":{"type":"string","optional":true,"computed":true},"single_sign_on_enabled":{"type":"string","optional":true,"computed":true,"exactly_one_of":["single_sign_on","single_sign_on_enabled"]}}}},"azurerm_datadog_monitor_tag_rule":{"block":{"attributes":{"datadog_monitor_id":{"type":"string","required":true},"name":{"type":"string","optional":true,"default":"default"}},"block_types":{"log":{"nesting_mode":3,"block":{"attributes":{"aad_log_enabled":{"type":"bool","optional":true},"resource_log_enabled":{"type":"bool","optional":true},"subscription_log_enabled":{"type":"bool","optional":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"metric":{"nesting_mode":3,"block":{"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_dedicated_hardware_security_module":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"stamp_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"management_network_profile":{"nesting_mode":3,"block":{"attributes":{"network_interface_private_ip_addresses":{"type":["set","string"],"required":true},"subnet_id":{"type":"string","required":true}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"network_interface_private_ip_addresses":{"type":["set","string"],"required":true},"subnet_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_dedicated_host":{"block":{"attributes":{"auto_replace_on_failure":{"type":"bool","optional":true,"default":true},"dedicated_host_group_id":{"type":"string","required":true},"license_type":{"type":"string","optional":true,"default":"None"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"platform_fault_domain":{"type":"number","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_dedicated_host_group":{"block":{"attributes":{"automatic_placement_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"platform_fault_domain_count":{"type":"number","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone":{"type":"string","optional":true}}}},"azurerm_dev_center":{"block":{"attributes":{"dev_center_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"project_catalog_item_sync_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dev_center_attached_network":{"block":{"attributes":{"dev_center_id":{"type":"string","required":true},"name":{"type":"string","required":true},"network_connection_id":{"type":"string","required":true}}}},"azurerm_dev_center_catalog":{"block":{"attributes":{"dev_center_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"catalog_adogit":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","required":true},"key_vault_key_url":{"type":"string","required":true},"path":{"type":"string","required":true},"uri":{"type":"string","required":true}}},"optional":true},"catalog_github":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","required":true},"key_vault_key_url":{"type":"string","required":true},"path":{"type":"string","required":true},"uri":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dev_center_dev_box_definition":{"block":{"attributes":{"dev_center_id":{"type":"string","required":true},"hibernate_support_enabled":{"type":"bool","optional":true,"default":false},"image_reference_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_dev_center_environment_type":{"block":{"attributes":{"dev_center_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_dev_center_gallery":{"block":{"attributes":{"dev_center_id":{"type":"string","required":true},"name":{"type":"string","required":true},"shared_gallery_id":{"type":"string","required":true}}}},"azurerm_dev_center_network_connection":{"block":{"attributes":{"domain_join_type":{"type":"string","required":true},"domain_name":{"type":"string","optional":true},"domain_password":{"type":"string","optional":true},"domain_username":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"organization_unit":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_dev_center_project":{"block":{"attributes":{"description":{"type":"string","optional":true},"dev_center_id":{"type":"string","required":true},"dev_center_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"maximum_dev_boxes_per_user":{"type":"number","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dev_center_project_environment_type":{"block":{"attributes":{"creator_role_assignment_roles":{"type":["set","string"],"optional":true},"deployment_target_id":{"type":"string","required":true},"dev_center_project_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true},"user_role_assignment":{"nesting_mode":4,"block":{"attributes":{"roles":{"type":["set","string"],"required":true},"user_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dev_center_project_pool":{"block":{"attributes":{"dev_box_definition_name":{"type":"string","required":true},"dev_center_attached_network_name":{"type":"string","required":true},"dev_center_project_id":{"type":"string","required":true},"local_administrator_enabled":{"type":"bool","required":true},"location":{"type":"string","required":true},"managed_virtual_network_regions":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"single_sign_on_enabled":{"type":"bool","optional":true,"default":false},"stop_on_disconnect_grace_period_minutes":{"type":"number","optional":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_dev_test_global_vm_shutdown_schedule":{"block":{"attributes":{"daily_recurrence_time":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"timezone":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"notification_settings":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","optional":true},"enabled":{"type":"bool","required":true},"time_in_minutes":{"type":"number","optional":true,"default":30},"webhook_url":{"type":"string","optional":true}}},"required":true}}}},"azurerm_dev_test_lab":{"block":{"attributes":{"artifacts_storage_account_id":{"type":"string","computed":true},"default_premium_storage_account_id":{"type":"string","computed":true},"default_storage_account_id":{"type":"string","computed":true},"key_vault_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"premium_data_disk_storage_account_id":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"unique_identifier":{"type":"string","computed":true}}}},"azurerm_dev_test_linux_virtual_machine":{"block":{"attributes":{"allow_claim":{"type":"bool","optional":true,"default":true},"disallow_public_ip_address":{"type":"bool","optional":true},"fqdn":{"type":"string","computed":true},"lab_name":{"type":"string","required":true},"lab_subnet_name":{"type":"string","required":true},"lab_virtual_network_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"notes":{"type":"string","optional":true},"password":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"size":{"type":"string","required":true},"ssh_key":{"type":"string","optional":true},"storage_type":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"unique_identifier":{"type":"string","computed":true},"username":{"type":"string","required":true}},"block_types":{"gallery_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"inbound_nat_rule":{"nesting_mode":4,"block":{"attributes":{"backend_port":{"type":"number","required":true},"frontend_port":{"type":"number","computed":true},"protocol":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dev_test_policy":{"block":{"attributes":{"description":{"type":"string","optional":true},"evaluator_type":{"type":"string","required":true},"fact_data":{"type":"string","optional":true},"lab_name":{"type":"string","required":true},"name":{"type":"string","required":true},"policy_set_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"threshold":{"type":"string","required":true}}}},"azurerm_dev_test_schedule":{"block":{"attributes":{"lab_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"status":{"type":"string","optional":true,"default":"Disabled"},"tags":{"type":["map","string"],"optional":true},"task_type":{"type":"string","required":true},"time_zone_id":{"type":"string","required":true}},"block_types":{"daily_recurrence":{"nesting_mode":3,"block":{"attributes":{"time":{"type":"string","required":true}}},"optional":true},"hourly_recurrence":{"nesting_mode":3,"block":{"attributes":{"minute":{"type":"number","required":true}}},"optional":true},"notification_settings":{"nesting_mode":3,"block":{"attributes":{"status":{"type":"string","optional":true,"default":"Disabled"},"time_in_minutes":{"type":"number","optional":true},"webhook_url":{"type":"string","optional":true}}},"required":true},"weekly_recurrence":{"nesting_mode":3,"block":{"attributes":{"time":{"type":"string","required":true},"week_days":{"type":["list","string"],"optional":true}}},"optional":true}}}},"azurerm_dev_test_virtual_network":{"block":{"attributes":{"description":{"type":"string","optional":true},"lab_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"unique_identifier":{"type":"string","computed":true}},"block_types":{"subnet":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","computed":true},"use_in_virtual_machine_creation":{"type":"string","optional":true,"default":"Allow"},"use_public_ip_address":{"type":"string","optional":true,"default":"Allow"}},"block_types":{"shared_public_ip_address":{"nesting_mode":3,"block":{"block_types":{"allowed_ports":{"nesting_mode":3,"block":{"attributes":{"backend_port":{"type":"number","optional":true},"transport_protocol":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_dev_test_windows_virtual_machine":{"block":{"attributes":{"allow_claim":{"type":"bool","optional":true,"default":true},"disallow_public_ip_address":{"type":"bool","optional":true},"fqdn":{"type":"string","computed":true},"lab_name":{"type":"string","required":true},"lab_subnet_name":{"type":"string","required":true},"lab_virtual_network_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"notes":{"type":"string","optional":true},"password":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"size":{"type":"string","required":true},"storage_type":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"unique_identifier":{"type":"string","computed":true},"username":{"type":"string","required":true}},"block_types":{"gallery_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"inbound_nat_rule":{"nesting_mode":4,"block":{"attributes":{"backend_port":{"type":"number","required":true},"frontend_port":{"type":"number","computed":true},"protocol":{"type":"string","required":true}}},"optional":true}}}},"azurerm_digital_twins_endpoint_eventgrid":{"block":{"attributes":{"dead_letter_storage_secret":{"type":"string","optional":true},"digital_twins_id":{"type":"string","required":true},"eventgrid_topic_endpoint":{"type":"string","required":true},"eventgrid_topic_primary_access_key":{"type":"string","required":true},"eventgrid_topic_secondary_access_key":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_digital_twins_endpoint_eventhub":{"block":{"attributes":{"dead_letter_storage_secret":{"type":"string","optional":true},"digital_twins_id":{"type":"string","required":true},"eventhub_primary_connection_string":{"type":"string","required":true},"eventhub_secondary_connection_string":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_digital_twins_endpoint_servicebus":{"block":{"attributes":{"dead_letter_storage_secret":{"type":"string","optional":true},"digital_twins_id":{"type":"string","required":true},"name":{"type":"string","required":true},"servicebus_primary_connection_string":{"type":"string","required":true},"servicebus_secondary_connection_string":{"type":"string","required":true}}}},"azurerm_digital_twins_instance":{"block":{"attributes":{"host_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_digital_twins_time_series_database_connection":{"block":{"attributes":{"digital_twins_id":{"type":"string","required":true},"eventhub_consumer_group_name":{"type":"string","optional":true,"default":"$Default"},"eventhub_name":{"type":"string","required":true},"eventhub_namespace_endpoint_uri":{"type":"string","required":true},"eventhub_namespace_id":{"type":"string","required":true},"kusto_cluster_id":{"type":"string","required":true},"kusto_cluster_uri":{"type":"string","required":true},"kusto_database_name":{"type":"string","required":true},"kusto_table_name":{"type":"string","optional":true,"default":"AdtPropertyEvents"},"name":{"type":"string","required":true}}}},"azurerm_disk_access":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_disk_encryption_set":{"block":{"attributes":{"auto_key_rotation_enabled":{"type":"bool","optional":true,"default":false},"encryption_type":{"type":"string","optional":true,"default":"EncryptionAtRestWithCustomerKey"},"federated_client_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_key_id"]},"key_vault_key_url":{"type":"string","computed":true},"location":{"type":"string","required":true},"managed_hsm_key_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_key_id"]},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_dns_a_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"optional":true,"conflicts_with":["target_resource_id"]},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_resource_id":{"type":"string","optional":true,"conflicts_with":["records"]},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_dns_aaaa_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"optional":true,"conflicts_with":["target_resource_id"]},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_resource_id":{"type":"string","optional":true,"conflicts_with":["records"]},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_dns_caa_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"flags":{"type":"number","required":true},"tag":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_dns_cname_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"record":{"type":"string","optional":true,"exactly_one_of":["record","target_resource_id"]},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_resource_id":{"type":"string","optional":true,"exactly_one_of":["record","target_resource_id"]},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_dns_mx_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","optional":true,"default":"@"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"exchange":{"type":"string","required":true},"preference":{"type":"string","required":true}}},"required":true}}}},"azurerm_dns_ns_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["list","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_dns_ptr_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_dns_srv_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"port":{"type":"number","required":true},"priority":{"type":"number","required":true},"target":{"type":"string","required":true},"weight":{"type":"number","required":true}}},"required":true}}}},"azurerm_dns_txt_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_dns_zone":{"block":{"attributes":{"max_number_of_record_sets":{"type":"number","computed":true},"name":{"type":"string","required":true},"name_servers":{"type":["set","string"],"computed":true},"number_of_record_sets":{"type":"number","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"soa_record":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","required":true},"expire_time":{"type":"number","optional":true,"default":2419200},"fqdn":{"type":"string","computed":true},"host_name":{"type":"string","computed":true},"minimum_ttl":{"type":"number","optional":true,"default":300},"refresh_time":{"type":"number","optional":true,"default":3600},"retry_time":{"type":"number","optional":true,"default":300},"serial_number":{"type":"number","optional":true,"default":1},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","optional":true,"default":3600}}},"optional":true,"computed":true}}}},"azurerm_dynatrace_monitor":{"block":{"attributes":{"location":{"type":"string","required":true},"marketplace_subscription":{"type":"string","required":true},"monitoring_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"environment_properties":{"nesting_mode":3,"block":{"block_types":{"environment_info":{"nesting_mode":3,"block":{"attributes":{"environment_id":{"type":"string","required":true}}},"required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true},"plan":{"nesting_mode":3,"block":{"attributes":{"billing_cycle":{"type":"string","optional":true},"effective_date":{"type":"string","computed":true},"plan":{"type":"string","required":true},"usage_type":{"type":"string","optional":true}}},"required":true},"user":{"nesting_mode":3,"block":{"attributes":{"country":{"type":"string","required":true},"email":{"type":"string","required":true},"first_name":{"type":"string","required":true},"last_name":{"type":"string","required":true},"phone_number":{"type":"string","required":true}}},"required":true}}}},"azurerm_dynatrace_tag_rules":{"block":{"attributes":{"monitor_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"log_rule":{"nesting_mode":3,"block":{"attributes":{"send_activity_logs_enabled":{"type":"bool","optional":true,"default":false},"send_azure_active_directory_logs_enabled":{"type":"bool","optional":true,"default":false},"send_subscription_logs_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"filtering_tag":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}},"optional":true},"metric_rule":{"nesting_mode":3,"block":{"attributes":{"sending_metrics_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"filtering_tag":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_elastic_cloud_elasticsearch":{"block":{"attributes":{"elastic_cloud_deployment_id":{"type":"string","computed":true},"elastic_cloud_email_address":{"type":"string","required":true},"elastic_cloud_sso_default_url":{"type":"string","computed":true},"elastic_cloud_user_id":{"type":"string","computed":true},"elasticsearch_service_url":{"type":"string","computed":true},"kibana_service_url":{"type":"string","computed":true},"kibana_sso_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"monitoring_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"logs":{"nesting_mode":3,"block":{"attributes":{"send_activity_logs":{"type":"bool","optional":true,"default":false},"send_azuread_logs":{"type":"bool","optional":true,"default":false},"send_subscription_logs":{"type":"bool","optional":true,"default":false}},"block_types":{"filtering_tag":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_elastic_san":{"block":{"attributes":{"base_size_in_tib":{"type":"number","required":true},"extended_size_in_tib":{"type":"number","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"total_iops":{"type":"number","computed":true},"total_mbps":{"type":"number","computed":true},"total_size_in_tib":{"type":"number","computed":true},"total_volume_size_in_gib":{"type":"number","computed":true},"volume_group_count":{"type":"number","computed":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"tier":{"type":"string","optional":true,"default":"Premium"}}},"required":true}}}},"azurerm_elastic_san_volume":{"block":{"attributes":{"name":{"type":"string","required":true},"size_in_gib":{"type":"number","required":true},"target_iqn":{"type":"string","computed":true},"target_portal_hostname":{"type":"string","computed":true},"target_portal_port":{"type":"number","computed":true},"volume_group_id":{"type":"string","required":true},"volume_id":{"type":"string","computed":true}},"block_types":{"create_source":{"nesting_mode":3,"block":{"attributes":{"source_id":{"type":"string","required":true},"source_type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_elastic_san_volume_group":{"block":{"attributes":{"elastic_san_id":{"type":"string","required":true},"encryption_type":{"type":"string","optional":true,"default":"EncryptionAtRestWithPlatformKey"},"name":{"type":"string","required":true},"protocol_type":{"type":"string","optional":true,"default":"Iscsi"}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"current_versioned_key_expiration_timestamp":{"type":"string","computed":true},"current_versioned_key_id":{"type":"string","computed":true},"key_vault_key_id":{"type":"string","required":true},"last_key_rotation_timestamp":{"type":"string","computed":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"subnet_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_email_communication_service":{"block":{"attributes":{"data_location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_email_communication_service_domain":{"block":{"attributes":{"domain_management":{"type":"string","required":true},"email_service_id":{"type":"string","required":true},"from_sender_domain":{"type":"string","computed":true},"mail_from_sender_domain":{"type":"string","computed":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"user_engagement_tracking_enabled":{"type":"bool","optional":true},"verification_records":{"type":["list",["object",{"dkim":["list",["object",{"name":"string","ttl":"number","type":"string","value":"string"}]],"dkim2":["list",["object",{"name":"string","ttl":"number","type":"string","value":"string"}]],"dmarc":["list",["object",{"name":"string","ttl":"number","type":"string","value":"string"}]],"domain":["list",["object",{"name":"string","ttl":"number","type":"string","value":"string"}]],"spf":["list",["object",{"name":"string","ttl":"number","type":"string","value":"string"}]]}]],"computed":true}}}},"azurerm_email_communication_service_domain_sender_username":{"block":{"attributes":{"display_name":{"type":"string","optional":true},"email_service_domain_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_eventgrid_domain":{"block":{"attributes":{"auto_create_topic_with_first_subscription":{"type":"bool","optional":true,"default":true},"auto_delete_topic_with_last_subscription":{"type":"bool","optional":true,"default":true},"endpoint":{"type":"string","computed":true},"inbound_ip_rule":{"type":["list",["object",{"action":"string","ip_mask":"string"}]],"optional":true},"input_schema":{"type":"string","optional":true,"default":"EventGridSchema"},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"input_mapping_default_values":{"nesting_mode":3,"block":{"attributes":{"data_version":{"type":"string","optional":true},"event_type":{"type":"string","optional":true},"subject":{"type":"string","optional":true}}},"optional":true},"input_mapping_fields":{"nesting_mode":3,"block":{"attributes":{"data_version":{"type":"string","optional":true},"event_time":{"type":"string","optional":true},"event_type":{"type":"string","optional":true},"id":{"type":"string","optional":true},"subject":{"type":"string","optional":true},"topic":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_eventgrid_domain_topic":{"block":{"attributes":{"domain_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_eventgrid_event_subscription":{"block":{"attributes":{"advanced_filtering_on_arrays_enabled":{"type":"bool","optional":true,"default":false},"event_delivery_schema":{"type":"string","optional":true,"default":"EventGridSchema"},"eventhub_endpoint_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["azure_function_endpoint","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"expiration_time_utc":{"type":"string","optional":true},"hybrid_connection_endpoint_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"included_event_types":{"type":["list","string"],"optional":true,"computed":true},"labels":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"scope":{"type":"string","required":true},"service_bus_queue_endpoint_id":{"type":"string","optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"service_bus_topic_endpoint_id":{"type":"string","optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","storage_queue_endpoint","webhook_endpoint"]}},"block_types":{"advanced_filter":{"nesting_mode":3,"block":{"block_types":{"bool_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"bool","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"is_not_null":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"is_null_or_undefined":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_greater_than":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_greater_than_or_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","number"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_in_range":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list",["list","number"]],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_less_than":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_less_than_or_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_not_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","number"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_not_in_range":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list",["list","number"]],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_begins_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_contains":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_ends_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_begins_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_contains":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_ends_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]}}},"optional":true},"azure_function_endpoint":{"nesting_mode":3,"block":{"attributes":{"function_id":{"type":"string","required":true},"max_events_per_batch":{"type":"number","optional":true},"preferred_batch_size_in_kilobytes":{"type":"number","optional":true}}},"optional":true,"conflicts_with":["eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"dead_letter_identity":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true},"user_assigned_identity":{"type":"string","optional":true}}},"optional":true},"delivery_identity":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true},"user_assigned_identity":{"type":"string","optional":true}}},"optional":true},"delivery_property":{"nesting_mode":3,"block":{"attributes":{"header_name":{"type":"string","required":true},"secret":{"type":"bool","optional":true},"source_field":{"type":"string","optional":true},"type":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"retry_policy":{"nesting_mode":3,"block":{"attributes":{"event_time_to_live":{"type":"number","required":true},"max_delivery_attempts":{"type":"number","required":true}}},"optional":true,"computed":true},"storage_blob_dead_letter_destination":{"nesting_mode":3,"block":{"attributes":{"storage_account_id":{"type":"string","required":true},"storage_blob_container_name":{"type":"string","required":true}}},"optional":true},"storage_queue_endpoint":{"nesting_mode":3,"block":{"attributes":{"queue_message_time_to_live_in_seconds":{"type":"number","optional":true},"queue_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","webhook_endpoint"]},"subject_filter":{"nesting_mode":3,"block":{"attributes":{"case_sensitive":{"type":"bool","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]},"subject_begins_with":{"type":"string","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]},"subject_ends_with":{"type":"string","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]}}},"optional":true},"webhook_endpoint":{"nesting_mode":3,"block":{"attributes":{"active_directory_app_id_or_uri":{"type":"string","optional":true},"active_directory_tenant_id":{"type":"string","optional":true},"base_url":{"type":"string","computed":true},"max_events_per_batch":{"type":"number","optional":true},"preferred_batch_size_in_kilobytes":{"type":"number","optional":true},"url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint"]}}}},"azurerm_eventgrid_namespace":{"block":{"attributes":{"capacity":{"type":"number","optional":true,"default":1},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Standard"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"inbound_ip_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"ip_mask":{"type":"string","required":true}}},"optional":true},"topic_spaces_configuration":{"nesting_mode":3,"block":{"attributes":{"alternative_authentication_name_source":{"type":["list","string"],"optional":true},"maximum_client_sessions_per_authentication_name":{"type":"number","optional":true,"default":1},"maximum_session_expiry_in_hours":{"type":"number","optional":true,"default":1},"route_topic_id":{"type":"string","optional":true}},"block_types":{"dynamic_routing_enrichment":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"static_routing_enrichment":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_eventgrid_partner_configuration":{"block":{"attributes":{"default_maximum_expiration_time_in_days":{"type":"number","optional":true,"default":7},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"partner_authorization":{"nesting_mode":3,"block":{"attributes":{"authorization_expiration_time_in_utc":{"type":"string","optional":true},"partner_name":{"type":"string","required":true},"partner_registration_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_eventgrid_partner_namespace":{"block":{"attributes":{"endpoint":{"type":"string","computed":true},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"partner_registration_id":{"type":"string","required":true},"partner_topic_routing_mode":{"type":"string","optional":true,"default":"ChannelNameHeader"},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"inbound_ip_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"ip_mask":{"type":"string","required":true}}},"optional":true}}}},"azurerm_eventgrid_partner_registration":{"block":{"attributes":{"name":{"type":"string","required":true},"partner_registration_id":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_eventgrid_system_topic":{"block":{"attributes":{"location":{"type":"string","required":true},"metric_arm_resource_id":{"type":"string","computed":true},"metric_resource_id":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_arm_resource_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["source_resource_id"]},"source_resource_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["source_arm_resource_id"]},"tags":{"type":["map","string"],"optional":true},"topic_type":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_eventgrid_system_topic_event_subscription":{"block":{"attributes":{"advanced_filtering_on_arrays_enabled":{"type":"bool","optional":true,"default":false},"event_delivery_schema":{"type":"string","optional":true,"default":"EventGridSchema"},"eventhub_endpoint_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["azure_function_endpoint","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"expiration_time_utc":{"type":"string","optional":true},"hybrid_connection_endpoint_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"included_event_types":{"type":["list","string"],"optional":true,"computed":true},"labels":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"service_bus_queue_endpoint_id":{"type":"string","optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"service_bus_topic_endpoint_id":{"type":"string","optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"system_topic":{"type":"string","required":true}},"block_types":{"advanced_filter":{"nesting_mode":3,"block":{"block_types":{"bool_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"bool","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"is_not_null":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"is_null_or_undefined":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_greater_than":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_greater_than_or_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","number"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_in_range":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list",["list","number"]],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_less_than":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_less_than_or_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_not_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","number"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_not_in_range":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list",["list","number"]],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_begins_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_contains":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_ends_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_begins_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_contains":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_ends_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]}}},"optional":true},"azure_function_endpoint":{"nesting_mode":3,"block":{"attributes":{"function_id":{"type":"string","required":true},"max_events_per_batch":{"type":"number","optional":true},"preferred_batch_size_in_kilobytes":{"type":"number","optional":true}}},"optional":true,"conflicts_with":["eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"dead_letter_identity":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true},"user_assigned_identity":{"type":"string","optional":true}}},"optional":true},"delivery_identity":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true},"user_assigned_identity":{"type":"string","optional":true}}},"optional":true},"delivery_property":{"nesting_mode":3,"block":{"attributes":{"header_name":{"type":"string","required":true},"secret":{"type":"bool","optional":true},"source_field":{"type":"string","optional":true},"type":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"retry_policy":{"nesting_mode":3,"block":{"attributes":{"event_time_to_live":{"type":"number","required":true},"max_delivery_attempts":{"type":"number","required":true}}},"optional":true,"computed":true},"storage_blob_dead_letter_destination":{"nesting_mode":3,"block":{"attributes":{"storage_account_id":{"type":"string","required":true},"storage_blob_container_name":{"type":"string","required":true}}},"optional":true},"storage_queue_endpoint":{"nesting_mode":3,"block":{"attributes":{"queue_message_time_to_live_in_seconds":{"type":"number","optional":true},"queue_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","webhook_endpoint"]},"subject_filter":{"nesting_mode":3,"block":{"attributes":{"case_sensitive":{"type":"bool","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]},"subject_begins_with":{"type":"string","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]},"subject_ends_with":{"type":"string","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]}}},"optional":true},"webhook_endpoint":{"nesting_mode":3,"block":{"attributes":{"active_directory_app_id_or_uri":{"type":"string","optional":true},"active_directory_tenant_id":{"type":"string","optional":true},"base_url":{"type":"string","computed":true},"max_events_per_batch":{"type":"number","optional":true},"preferred_batch_size_in_kilobytes":{"type":"number","optional":true},"url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint"]}}}},"azurerm_eventgrid_topic":{"block":{"attributes":{"endpoint":{"type":"string","computed":true},"inbound_ip_rule":{"type":["list",["object",{"action":"string","ip_mask":"string"}]],"optional":true},"input_schema":{"type":"string","optional":true,"default":"EventGridSchema"},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"input_mapping_default_values":{"nesting_mode":3,"block":{"attributes":{"data_version":{"type":"string","optional":true},"event_type":{"type":"string","optional":true},"subject":{"type":"string","optional":true}}},"optional":true},"input_mapping_fields":{"nesting_mode":3,"block":{"attributes":{"data_version":{"type":"string","optional":true},"event_time":{"type":"string","optional":true},"event_type":{"type":"string","optional":true},"id":{"type":"string","optional":true},"subject":{"type":"string","optional":true},"topic":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_eventhub":{"block":{"attributes":{"message_retention":{"type":"number","optional":true,"computed":true,"exactly_one_of":["retention_description","message_retention"]},"name":{"type":"string","required":true},"namespace_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["namespace_id","namespace_name"]},"namespace_name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["namespace_id","namespace_name"]},"partition_count":{"type":"number","required":true},"partition_ids":{"type":["set","string"],"computed":true},"resource_group_name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["namespace_id","resource_group_name"]},"status":{"type":"string","optional":true,"default":"Active"}},"block_types":{"capture_description":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"encoding":{"type":"string","required":true},"interval_in_seconds":{"type":"number","optional":true,"default":300},"size_limit_in_bytes":{"type":"number","optional":true,"default":314572800},"skip_empty_archives":{"type":"bool","optional":true,"default":false}},"block_types":{"destination":{"nesting_mode":3,"block":{"attributes":{"archive_name_format":{"type":"string","required":true},"blob_container_name":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"required":true}}},"optional":true},"retention_description":{"nesting_mode":3,"block":{"attributes":{"cleanup_policy":{"type":"string","required":true},"retention_time_in_hours":{"type":"number","optional":true,"exactly_one_of":["retention_description.0.tombstone_retention_time_in_hours","retention_description.0.retention_time_in_hours"]},"tombstone_retention_time_in_hours":{"type":"number","optional":true,"exactly_one_of":["retention_description.0.retention_time_in_hours","retention_description.0.tombstone_retention_time_in_hours"]}}},"optional":true,"computed":true}}}},"azurerm_eventhub_authorization_rule":{"block":{"attributes":{"eventhub_name":{"type":"string","required":true},"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_connection_string_alias":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_eventhub_cluster":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_eventhub_consumer_group":{"block":{"attributes":{"eventhub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"user_metadata":{"type":"string","optional":true}}}},"azurerm_eventhub_namespace":{"block":{"attributes":{"auto_inflate_enabled":{"type":"bool","optional":true,"default":false},"capacity":{"type":"number","optional":true,"default":1},"dedicated_cluster_id":{"type":"string","optional":true},"default_primary_connection_string":{"type":"string","computed":true},"default_primary_connection_string_alias":{"type":"string","computed":true},"default_primary_key":{"type":"string","computed":true},"default_secondary_connection_string":{"type":"string","computed":true},"default_secondary_connection_string_alias":{"type":"string","computed":true},"default_secondary_key":{"type":"string","computed":true},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"maximum_throughput_units":{"type":"number","optional":true},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"network_rulesets":{"type":["list",["object",{"default_action":"string","ip_rule":["list",["object",{"action":"string","ip_mask":"string"}]],"public_network_access_enabled":"bool","trusted_service_access_enabled":"bool","virtual_network_rule":["set",["object",{"ignore_missing_virtual_network_service_endpoint":"bool","subnet_id":"string"}]]}]],"optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_eventhub_namespace_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_connection_string_alias":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_eventhub_namespace_customer_managed_key":{"block":{"attributes":{"eventhub_namespace_id":{"type":"string","required":true},"infrastructure_encryption_enabled":{"type":"bool","optional":true,"default":false},"key_vault_key_ids":{"type":["set","string"],"required":true},"user_assigned_identity_id":{"type":"string","optional":true}}}},"azurerm_eventhub_namespace_disaster_recovery_config":{"block":{"attributes":{"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"partner_namespace_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_eventhub_namespace_schema_group":{"block":{"attributes":{"name":{"type":"string","required":true},"namespace_id":{"type":"string","required":true},"schema_compatibility":{"type":"string","required":true},"schema_type":{"type":"string","required":true}}}},"azurerm_express_route_circuit":{"block":{"attributes":{"allow_classic_operations":{"type":"bool","optional":true,"default":false},"authorization_key":{"type":"string","optional":true},"bandwidth_in_gbps":{"type":"number","optional":true,"conflicts_with":["bandwidth_in_mbps","peering_location","service_provider_name"],"required_with":["express_route_port_id"]},"bandwidth_in_mbps":{"type":"number","optional":true,"conflicts_with":["bandwidth_in_gbps","express_route_port_id"],"required_with":["peering_location","service_provider_name"]},"express_route_port_id":{"type":"string","optional":true,"conflicts_with":["bandwidth_in_mbps","peering_location","service_provider_name"],"required_with":["bandwidth_in_gbps"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"peering_location":{"type":"string","optional":true,"conflicts_with":["bandwidth_in_gbps","express_route_port_id"],"required_with":["bandwidth_in_mbps","service_provider_name"]},"rate_limiting_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"service_key":{"type":"string","computed":true},"service_provider_name":{"type":"string","optional":true,"conflicts_with":["bandwidth_in_gbps","express_route_port_id"],"required_with":["bandwidth_in_mbps","peering_location"]},"service_provider_provisioning_state":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"family":{"type":"string","required":true},"tier":{"type":"string","required":true}}},"required":true}}}},"azurerm_express_route_circuit_authorization":{"block":{"attributes":{"authorization_key":{"type":"string","computed":true},"authorization_use_status":{"type":"string","computed":true},"express_route_circuit_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_express_route_circuit_connection":{"block":{"attributes":{"address_prefix_ipv4":{"type":"string","required":true},"address_prefix_ipv6":{"type":"string","optional":true},"authorization_key":{"type":"string","optional":true},"name":{"type":"string","required":true},"peer_peering_id":{"type":"string","required":true},"peering_id":{"type":"string","required":true}}}},"azurerm_express_route_circuit_peering":{"block":{"attributes":{"azure_asn":{"type":"number","computed":true},"express_route_circuit_name":{"type":"string","required":true},"gateway_manager_etag":{"type":"string","computed":true},"ipv4_enabled":{"type":"bool","optional":true,"default":true},"peer_asn":{"type":"number","optional":true,"computed":true},"peering_type":{"type":"string","required":true},"primary_azure_port":{"type":"string","computed":true},"primary_peer_address_prefix":{"type":"string","optional":true,"required_with":["secondary_peer_address_prefix"]},"resource_group_name":{"type":"string","required":true},"route_filter_id":{"type":"string","optional":true},"secondary_azure_port":{"type":"string","computed":true},"secondary_peer_address_prefix":{"type":"string","optional":true,"required_with":["primary_peer_address_prefix"]},"shared_key":{"type":"string","optional":true},"vlan_id":{"type":"number","required":true}},"block_types":{"ipv6":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"primary_peer_address_prefix":{"type":"string","required":true},"route_filter_id":{"type":"string","optional":true},"secondary_peer_address_prefix":{"type":"string","required":true}},"block_types":{"microsoft_peering":{"nesting_mode":3,"block":{"attributes":{"advertised_communities":{"type":["list","string"],"optional":true},"advertised_public_prefixes":{"type":["list","string"],"optional":true},"customer_asn":{"type":"number","optional":true,"default":0},"routing_registry_name":{"type":"string","optional":true,"default":"NONE"}}},"optional":true}}},"optional":true},"microsoft_peering_config":{"nesting_mode":3,"block":{"attributes":{"advertised_communities":{"type":["list","string"],"optional":true},"advertised_public_prefixes":{"type":["list","string"],"required":true},"customer_asn":{"type":"number","optional":true,"default":0},"routing_registry_name":{"type":"string","optional":true,"default":"NONE"}}},"optional":true}}}},"azurerm_express_route_connection":{"block":{"attributes":{"authorization_key":{"type":"string","optional":true},"enable_internet_security":{"type":"bool","optional":true},"express_route_circuit_peering_id":{"type":"string","required":true},"express_route_gateway_bypass_enabled":{"type":"bool","optional":true,"default":false},"express_route_gateway_id":{"type":"string","required":true},"name":{"type":"string","required":true},"private_link_fast_path_enabled":{"type":"bool","optional":true},"routing_weight":{"type":"number","optional":true,"default":0}},"block_types":{"routing":{"nesting_mode":3,"block":{"attributes":{"associated_route_table_id":{"type":"string","optional":true,"computed":true,"at_least_one_of":["routing.0.associated_route_table_id","routing.0.propagated_route_table"]},"inbound_route_map_id":{"type":"string","optional":true},"outbound_route_map_id":{"type":"string","optional":true}},"block_types":{"propagated_route_table":{"nesting_mode":3,"block":{"attributes":{"labels":{"type":["set","string"],"optional":true,"computed":true,"at_least_one_of":["routing.0.propagated_route_table.0.labels","routing.0.propagated_route_table.0.route_table_ids"]},"route_table_ids":{"type":["list","string"],"optional":true,"computed":true,"at_least_one_of":["routing.0.propagated_route_table.0.labels","routing.0.propagated_route_table.0.route_table_ids"]}}},"optional":true,"computed":true,"at_least_one_of":["routing.0.associated_route_table_id","routing.0.propagated_route_table"]}}},"optional":true,"computed":true}}}},"azurerm_express_route_gateway":{"block":{"attributes":{"allow_non_virtual_wan_traffic":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scale_units":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_hub_id":{"type":"string","required":true}}}},"azurerm_express_route_port":{"block":{"attributes":{"bandwidth_in_gbps":{"type":"number","required":true},"billing_type":{"type":"string","optional":true,"default":"MeteredData"},"encapsulation":{"type":"string","required":true},"ethertype":{"type":"string","computed":true},"guid":{"type":"string","computed":true},"location":{"type":"string","required":true},"mtu":{"type":"string","computed":true},"name":{"type":"string","required":true},"peering_location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"link1":{"nesting_mode":3,"block":{"attributes":{"admin_enabled":{"type":"bool","optional":true,"default":false},"connector_type":{"type":"string","computed":true},"id":{"type":"string","computed":true},"interface_name":{"type":"string","computed":true},"macsec_cak_keyvault_secret_id":{"type":"string","optional":true},"macsec_cipher":{"type":"string","optional":true,"default":"GcmAes128"},"macsec_ckn_keyvault_secret_id":{"type":"string","optional":true},"macsec_sci_enabled":{"type":"bool","optional":true,"default":false},"patch_panel_id":{"type":"string","computed":true},"rack_id":{"type":"string","computed":true},"router_name":{"type":"string","computed":true}}},"optional":true,"computed":true},"link2":{"nesting_mode":3,"block":{"attributes":{"admin_enabled":{"type":"bool","optional":true,"default":false},"connector_type":{"type":"string","computed":true},"id":{"type":"string","computed":true},"interface_name":{"type":"string","computed":true},"macsec_cak_keyvault_secret_id":{"type":"string","optional":true},"macsec_cipher":{"type":"string","optional":true,"default":"GcmAes128"},"macsec_ckn_keyvault_secret_id":{"type":"string","optional":true},"macsec_sci_enabled":{"type":"bool","optional":true,"default":false},"patch_panel_id":{"type":"string","computed":true},"rack_id":{"type":"string","computed":true},"router_name":{"type":"string","computed":true}}},"optional":true,"computed":true}}}},"azurerm_express_route_port_authorization":{"block":{"attributes":{"authorization_key":{"type":"string","computed":true},"authorization_use_status":{"type":"string","computed":true},"express_route_port_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_extended_custom_location":{"block":{"attributes":{"cluster_extension_ids":{"type":["list","string"],"required":true},"display_name":{"type":"string","optional":true},"host_resource_id":{"type":"string","required":true},"host_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","optional":true},"value":{"type":"string","required":true}}},"optional":true}}}},"azurerm_extended_location_custom_location":{"block":{"attributes":{"cluster_extension_ids":{"type":["list","string"],"required":true},"display_name":{"type":"string","optional":true},"host_resource_id":{"type":"string","required":true},"host_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","optional":true},"value":{"type":"string","required":true}}},"optional":true}}}},"azurerm_fabric_capacity":{"block":{"attributes":{"administration_members":{"type":["set","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"tier":{"type":"string","required":true}}},"required":true}}}},"azurerm_federated_identity_credential":{"block":{"attributes":{"audience":{"type":["list","string"],"required":true},"issuer":{"type":"string","required":true},"name":{"type":"string","required":true},"parent_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subject":{"type":"string","required":true}}}},"azurerm_firewall":{"block":{"attributes":{"dns_proxy_enabled":{"type":"bool","optional":true,"computed":true},"dns_servers":{"type":["list","string"],"optional":true},"firewall_policy_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_ip_ranges":{"type":["set","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"sku_tier":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"threat_intel_mode":{"type":"string","optional":true,"computed":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"private_ip_address":{"type":"string","computed":true},"public_ip_address_id":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"optional":true},"management_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"private_ip_address":{"type":"string","computed":true},"public_ip_address_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true},"virtual_hub":{"nesting_mode":3,"block":{"attributes":{"private_ip_address":{"type":"string","computed":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_count":{"type":"number","optional":true,"default":1},"virtual_hub_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_firewall_application_rule_collection":{"block":{"attributes":{"action":{"type":"string","required":true},"azure_firewall_name":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"fqdn_tags":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true},"target_fqdns":{"type":["list","string"],"optional":true}},"block_types":{"protocol":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_firewall_nat_rule_collection":{"block":{"attributes":{"action":{"type":"string","required":true},"azure_firewall_name":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_addresses":{"type":["list","string"],"required":true},"destination_ports":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"protocols":{"type":["list","string"],"required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true},"translated_address":{"type":"string","required":true},"translated_port":{"type":"string","required":true}}},"required":true}}}},"azurerm_firewall_network_rule_collection":{"block":{"attributes":{"action":{"type":"string","required":true},"azure_firewall_name":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_addresses":{"type":["list","string"],"optional":true},"destination_fqdns":{"type":["list","string"],"optional":true},"destination_ip_groups":{"type":["list","string"],"optional":true},"destination_ports":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"protocols":{"type":["list","string"],"required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true}}},"required":true}}}},"azurerm_firewall_policy":{"block":{"attributes":{"auto_learn_private_ranges_enabled":{"type":"bool","optional":true},"base_policy_id":{"type":"string","optional":true},"child_policies":{"type":["list","string"],"computed":true},"firewalls":{"type":["list","string"],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_ip_ranges":{"type":["list","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"rule_collection_groups":{"type":["list","string"],"computed":true},"sku":{"type":"string","optional":true,"default":"Standard"},"sql_redirect_allowed":{"type":"bool","optional":true},"tags":{"type":["map","string"],"optional":true},"threat_intelligence_mode":{"type":"string","optional":true,"default":"Alert"}},"block_types":{"dns":{"nesting_mode":3,"block":{"attributes":{"proxy_enabled":{"type":"bool","optional":true,"default":false},"servers":{"type":["list","string"],"optional":true}}},"optional":true},"explicit_proxy":{"nesting_mode":3,"block":{"attributes":{"enable_pac_file":{"type":"bool","optional":true},"enabled":{"type":"bool","optional":true},"http_port":{"type":"number","optional":true},"https_port":{"type":"number","optional":true},"pac_file":{"type":"string","optional":true},"pac_file_port":{"type":"number","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"insights":{"nesting_mode":3,"block":{"attributes":{"default_log_analytics_workspace_id":{"type":"string","required":true},"enabled":{"type":"bool","required":true},"retention_in_days":{"type":"number","optional":true}},"block_types":{"log_analytics_workspace":{"nesting_mode":3,"block":{"attributes":{"firewall_location":{"type":"string","required":true},"id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"intrusion_detection":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","optional":true},"private_ranges":{"type":["list","string"],"optional":true}},"block_types":{"signature_overrides":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","optional":true},"state":{"type":"string","optional":true}}},"optional":true},"traffic_bypass":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_addresses":{"type":["set","string"],"optional":true},"destination_ip_groups":{"type":["set","string"],"optional":true},"destination_ports":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"source_addresses":{"type":["set","string"],"optional":true},"source_ip_groups":{"type":["set","string"],"optional":true}}},"optional":true}}},"optional":true},"threat_intelligence_allowlist":{"nesting_mode":3,"block":{"attributes":{"fqdns":{"type":["set","string"],"optional":true,"at_least_one_of":["threat_intelligence_allowlist.0.ip_addresses","threat_intelligence_allowlist.0.fqdns"]},"ip_addresses":{"type":["set","string"],"optional":true,"at_least_one_of":["threat_intelligence_allowlist.0.ip_addresses","threat_intelligence_allowlist.0.fqdns"]}}},"optional":true},"tls_certificate":{"nesting_mode":3,"block":{"attributes":{"key_vault_secret_id":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_firewall_policy_rule_collection_group":{"block":{"attributes":{"firewall_policy_id":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"application_rule_collection":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_addresses":{"type":["list","string"],"optional":true},"destination_fqdn_tags":{"type":["list","string"],"optional":true},"destination_fqdns":{"type":["list","string"],"optional":true},"destination_urls":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true},"terminate_tls":{"type":"bool","optional":true},"web_categories":{"type":["list","string"],"optional":true}},"block_types":{"http_headers":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"protocols":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"optional":true},"nat_rule_collection":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_address":{"type":"string","optional":true},"destination_ports":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"protocols":{"type":["list","string"],"required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true},"translated_address":{"type":"string","optional":true},"translated_fqdn":{"type":"string","optional":true},"translated_port":{"type":"number","required":true}}},"required":true}}},"optional":true},"network_rule_collection":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_addresses":{"type":["list","string"],"optional":true},"destination_fqdns":{"type":["list","string"],"optional":true},"destination_ip_groups":{"type":["list","string"],"optional":true},"destination_ports":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"protocols":{"type":["list","string"],"required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_fluid_relay_server":{"block":{"attributes":{"frs_tenant_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"orderer_endpoints":{"type":["list","string"],"computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_key":{"type":"string","computed":true},"service_endpoints":{"type":["list","string"],"computed":true},"storage_endpoints":{"type":["list","string"],"computed":true},"storage_sku":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_frontdoor":{"block":{"attributes":{"backend_pool_health_probes":{"type":["map","string"],"computed":true},"backend_pool_load_balancing_settings":{"type":["map","string"],"computed":true},"backend_pools":{"type":["map","string"],"computed":true},"cname":{"type":"string","computed":true},"explicit_resource_order":{"type":["list",["object",{"backend_pool_health_probe_ids":["list","string"],"backend_pool_ids":["list","string"],"backend_pool_load_balancing_ids":["list","string"],"frontend_endpoint_ids":["list","string"],"routing_rule_ids":["list","string"]}]],"computed":true},"friendly_name":{"type":"string","optional":true},"frontend_endpoints":{"type":["map","string"],"computed":true},"header_frontdoor_id":{"type":"string","computed":true},"load_balancer_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"routing_rules":{"type":["map","string"],"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"backend_pool":{"nesting_mode":3,"block":{"attributes":{"health_probe_name":{"type":"string","required":true},"id":{"type":"string","computed":true},"load_balancing_name":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"backend":{"nesting_mode":3,"block":{"attributes":{"address":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"host_header":{"type":"string","required":true},"http_port":{"type":"number","required":true},"https_port":{"type":"number","required":true},"priority":{"type":"number","optional":true,"default":1},"weight":{"type":"number","optional":true,"default":50}}},"required":true}}},"required":true},"backend_pool_health_probe":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"id":{"type":"string","computed":true},"interval_in_seconds":{"type":"number","optional":true,"default":120},"name":{"type":"string","required":true},"path":{"type":"string","optional":true,"default":"/"},"probe_method":{"type":"string","optional":true,"default":"GET"},"protocol":{"type":"string","optional":true,"default":"Http"}}},"required":true},"backend_pool_load_balancing":{"nesting_mode":3,"block":{"attributes":{"additional_latency_milliseconds":{"type":"number","optional":true,"default":0},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"sample_size":{"type":"number","optional":true,"default":4},"successful_samples_required":{"type":"number","optional":true,"default":2}}},"required":true},"backend_pool_settings":{"nesting_mode":3,"block":{"attributes":{"backend_pools_send_receive_timeout_seconds":{"type":"number","optional":true,"default":60},"enforce_backend_pools_certificate_name_check":{"type":"bool","required":true}}},"optional":true},"frontend_endpoint":{"nesting_mode":3,"block":{"attributes":{"host_name":{"type":"string","required":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"session_affinity_enabled":{"type":"bool","optional":true,"default":false},"session_affinity_ttl_seconds":{"type":"number","optional":true,"default":0},"web_application_firewall_policy_link_id":{"type":"string","optional":true}}},"required":true},"routing_rule":{"nesting_mode":3,"block":{"attributes":{"accepted_protocols":{"type":["list","string"],"required":true},"enabled":{"type":"bool","optional":true,"default":true},"frontend_endpoints":{"type":["list","string"],"required":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"patterns_to_match":{"type":["list","string"],"required":true}},"block_types":{"forwarding_configuration":{"nesting_mode":3,"block":{"attributes":{"backend_pool_name":{"type":"string","required":true},"cache_duration":{"type":"string","optional":true},"cache_enabled":{"type":"bool","optional":true,"default":false},"cache_query_parameter_strip_directive":{"type":"string","optional":true,"default":"StripAll"},"cache_query_parameters":{"type":["list","string"],"optional":true},"cache_use_dynamic_compression":{"type":"bool","optional":true,"default":false},"custom_forwarding_path":{"type":"string","optional":true},"forwarding_protocol":{"type":"string","optional":true,"default":"HttpsOnly"}}},"optional":true},"redirect_configuration":{"nesting_mode":3,"block":{"attributes":{"custom_fragment":{"type":"string","optional":true},"custom_host":{"type":"string","optional":true},"custom_path":{"type":"string","optional":true},"custom_query_string":{"type":"string","optional":true},"redirect_protocol":{"type":"string","required":true},"redirect_type":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_frontdoor_custom_https_configuration":{"block":{"attributes":{"custom_https_provisioning_enabled":{"type":"bool","required":true},"frontend_endpoint_id":{"type":"string","required":true}},"block_types":{"custom_https_configuration":{"nesting_mode":3,"block":{"attributes":{"azure_key_vault_certificate_secret_name":{"type":"string","optional":true},"azure_key_vault_certificate_secret_version":{"type":"string","optional":true},"azure_key_vault_certificate_vault_id":{"type":"string","optional":true},"certificate_source":{"type":"string","optional":true,"default":"FrontDoor"},"minimum_tls_version":{"type":"string","computed":true},"provisioning_state":{"type":"string","computed":true},"provisioning_substate":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_frontdoor_firewall_policy":{"block":{"attributes":{"custom_block_response_body":{"type":"string","optional":true},"custom_block_response_status_code":{"type":"number","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"frontend_endpoint_ids":{"type":["list","string"],"computed":true},"location":{"type":"string","computed":true},"mode":{"type":"string","optional":true,"default":"Prevention"},"name":{"type":"string","required":true},"redirect_url":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"custom_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":1},"rate_limit_duration_in_minutes":{"type":"number","optional":true,"default":1},"rate_limit_threshold":{"type":"number","optional":true,"default":10},"type":{"type":"string","required":true}},"block_types":{"match_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"required":true},"match_variable":{"type":"string","required":true},"negation_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","optional":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"managed_rule":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true},"version":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true},"override":{"nesting_mode":3,"block":{"attributes":{"rule_group_name":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true},"rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":false},"rule_id":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_frontdoor_rules_engine":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"frontdoor_name":{"type":"string","required":true},"location":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"action":{"nesting_mode":3,"block":{"block_types":{"request_header":{"nesting_mode":3,"block":{"attributes":{"header_action_type":{"type":"string","optional":true},"header_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"response_header":{"nesting_mode":3,"block":{"attributes":{"header_action_type":{"type":"string","optional":true},"header_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"match_condition":{"nesting_mode":3,"block":{"attributes":{"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","optional":true},"transform":{"type":["list","string"],"optional":true},"value":{"type":["list","string"],"optional":true},"variable":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_function_app":{"block":{"attributes":{"app_service_plan_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true,"computed":true},"client_cert_mode":{"type":"string","optional":true},"custom_domain_verification_id":{"type":"string","computed":true},"daily_memory_time_quota":{"type":"number","optional":true},"default_hostname":{"type":"string","computed":true},"enable_builtin_logging":{"type":"bool","optional":true,"default":true},"enabled":{"type":"bool","optional":true,"default":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"os_type":{"type":"string","optional":true,"default":""},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"password":"string","username":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true,"default":"~1"}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_params":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"default_provider":{"type":"string","optional":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":false},"app_scale_limit":{"type":"number","optional":true,"computed":true},"auto_swap_slot_name":{"type":"string","optional":true},"dotnet_framework_version":{"type":"string","optional":true,"default":"v4.0"},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"computed":true},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"java_version":{"type":"string","optional":true},"linux_fx_version":{"type":"string","optional":true,"computed":true},"min_tls_version":{"type":"string","optional":true,"computed":true},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true,"default":false},"scm_ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"scm_type":{"type":"string","optional":true,"computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker_process":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"computed":true},"websockets_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"required":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"source_control":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"manual_integration":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"repo_url":{"type":"string","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"rollback_enabled":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"use_mercurial":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]}}},"optional":true,"computed":true,"conflicts_with":["site_config.0.scm_type"]}}}},"azurerm_function_app_active_slot":{"block":{"attributes":{"last_successful_swap":{"type":"string","computed":true},"overwrite_network_config":{"type":"bool","optional":true,"default":true},"slot_id":{"type":"string","required":true}}}},"azurerm_function_app_connection":{"block":{"attributes":{"client_type":{"type":"string","optional":true,"default":"none"},"function_app_id":{"type":"string","required":true},"name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"vnet_solution":{"type":"string","optional":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"client_id":{"type":"string","optional":true},"name":{"type":"string","optional":true},"principal_id":{"type":"string","optional":true},"secret":{"type":"string","optional":true},"subscription_id":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true},"secret_store":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_function_app_flex_consumption":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Optional"},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"instance_memory_in_mb":{"type":"number","optional":true,"default":2048},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"maximum_instance_count":{"type":"number","optional":true,"default":100},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"runtime_name":{"type":"string","required":true},"runtime_version":{"type":"string","required":true},"service_plan_id":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"storage_access_key":{"type":"string","optional":true},"storage_authentication_type":{"type":"string","required":true},"storage_container_endpoint":{"type":"string","required":true},"storage_container_type":{"type":"string","required":true},"storage_user_assigned_identity_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_subnet_id":{"type":"string","optional":true},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"always_ready":{"nesting_mode":3,"block":{"attributes":{"instance_count":{"type":"number","optional":true},"name":{"type":"string","required":true}}},"optional":true},"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"application_insights_connection_string":{"type":"string","optional":true},"application_insights_key":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":false},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"app_service_logs":{"nesting_mode":3,"block":{"attributes":{"disk_quota_mb":{"type":"number","optional":true,"default":35},"retention_period_days":{"type":"number","optional":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"sticky_settings":{"nesting_mode":3,"block":{"attributes":{"app_setting_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]},"connection_string_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]}}},"optional":true}}}},"azurerm_function_app_function":{"block":{"attributes":{"config_json":{"type":"string","required":true},"config_url":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"function_app_id":{"type":"string","required":true},"invocation_url":{"type":"string","computed":true},"language":{"type":"string","optional":true},"name":{"type":"string","required":true},"script_root_path_url":{"type":"string","computed":true},"script_url":{"type":"string","computed":true},"secrets_file_url":{"type":"string","computed":true},"test_data":{"type":"string","optional":true},"test_data_url":{"type":"string","computed":true},"url":{"type":"string","computed":true}},"block_types":{"file":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_function_app_hybrid_connection":{"block":{"attributes":{"function_app_id":{"type":"string","required":true},"hostname":{"type":"string","required":true},"namespace_name":{"type":"string","computed":true},"port":{"type":"number","required":true},"relay_id":{"type":"string","required":true},"relay_name":{"type":"string","computed":true},"send_key_name":{"type":"string","optional":true,"default":"RootManageSharedAccessKey"},"send_key_value":{"type":"string","computed":true},"service_bus_namespace":{"type":"string","computed":true},"service_bus_suffix":{"type":"string","computed":true}}}},"azurerm_function_app_slot":{"block":{"attributes":{"app_service_plan_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true,"computed":true},"daily_memory_time_quota":{"type":"number","optional":true},"default_hostname":{"type":"string","computed":true},"enable_builtin_logging":{"type":"bool","optional":true,"default":true},"enabled":{"type":"bool","optional":true,"default":true},"function_app_name":{"type":"string","required":true},"https_only":{"type":"bool","optional":true,"default":false},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"os_type":{"type":"string","optional":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"password":"string","username":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true,"default":"~1"}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_params":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"default_provider":{"type":"string","optional":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":false},"app_scale_limit":{"type":"number","optional":true,"computed":true},"auto_swap_slot_name":{"type":"string","optional":true},"dotnet_framework_version":{"type":"string","optional":true,"default":"v4.0"},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"computed":true},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"java_version":{"type":"string","optional":true},"linux_fx_version":{"type":"string","optional":true,"computed":true},"min_tls_version":{"type":"string","optional":true,"computed":true},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true,"default":false},"scm_ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"scm_type":{"type":"string","optional":true,"computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker_process":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"computed":true},"websockets_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"required":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_gallery_application":{"block":{"attributes":{"description":{"type":"string","optional":true},"end_of_life_date":{"type":"string","optional":true},"eula":{"type":"string","optional":true},"gallery_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"privacy_statement_uri":{"type":"string","optional":true},"release_note_uri":{"type":"string","optional":true},"supported_os_type":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_gallery_application_version":{"block":{"attributes":{"config_file":{"type":"string","optional":true},"enable_health_check":{"type":"bool","optional":true,"default":false},"end_of_life_date":{"type":"string","optional":true},"exclude_from_latest":{"type":"bool","optional":true,"default":false},"gallery_application_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"package_file":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"manage_action":{"nesting_mode":3,"block":{"attributes":{"install":{"type":"string","required":true},"remove":{"type":"string","required":true},"update":{"type":"string","optional":true}}},"required":true},"source":{"nesting_mode":3,"block":{"attributes":{"default_configuration_link":{"type":"string","optional":true},"media_link":{"type":"string","required":true}}},"required":true},"target_region":{"nesting_mode":3,"block":{"attributes":{"exclude_from_latest":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"regional_replica_count":{"type":"number","required":true},"storage_account_type":{"type":"string","optional":true,"default":"Standard_LRS"}}},"required":true}}}},"azurerm_graph_services_account":{"block":{"attributes":{"application_id":{"type":"string","required":true},"billing_plan_id":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_hdinsight_hadoop_cluster":{"block":{"attributes":{"cluster_version":{"type":"string","required":true},"https_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssh_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","required":true},"tls_min_version":{"type":"string","optional":true}},"block_types":{"component_version":{"nesting_mode":3,"block":{"attributes":{"hadoop":{"type":"string","required":true}}},"required":true},"compute_isolation":{"nesting_mode":3,"block":{"attributes":{"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"host_sku":{"type":"string","optional":true}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"encryption_algorithm":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"key_vault_managed_identity_id":{"type":"string","optional":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"gateway":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"required":true},"metastores":{"nesting_mode":3,"block":{"block_types":{"ambari":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"hive":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"oozie":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}},"optional":true},"monitor":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"network":{"nesting_mode":3,"block":{"attributes":{"connection_direction":{"type":"string","optional":true,"default":"Inbound"},"private_link_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"private_link_configuration":{"nesting_mode":3,"block":{"attributes":{"group_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}},"optional":true},"roles":{"nesting_mode":3,"block":{"block_types":{"edge_node":{"nesting_mode":3,"block":{"attributes":{"target_instance_count":{"type":"number","required":true},"vm_size":{"type":"string","required":true}},"block_types":{"https_endpoints":{"nesting_mode":3,"block":{"attributes":{"access_modes":{"type":["list","string"],"optional":true},"destination_port":{"type":"number","optional":true},"disable_gateway_auth":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"sub_domain_suffix":{"type":"string","optional":true}}},"optional":true},"install_script_action":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"required":true},"uninstall_script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"optional":true},"head_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.head_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"worker_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.worker_node.0.password"]},"subnet_id":{"type":"string","optional":true},"target_instance_count":{"type":"number","required":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"autoscale":{"nesting_mode":3,"block":{"block_types":{"capacity":{"nesting_mode":3,"block":{"attributes":{"max_instance_count":{"type":"number","required":true},"min_instance_count":{"type":"number","required":true}}},"optional":true,"conflicts_with":["roles.0.worker_node.0.autoscale.0.recurrence"]},"recurrence":{"nesting_mode":3,"block":{"attributes":{"timezone":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"days":{"type":["list","string"],"required":true},"target_instance_count":{"type":"number","required":true},"time":{"type":"string","required":true}}},"required":true}}},"optional":true,"conflicts_with":["roles.0.worker_node.0.autoscale.0.capacity"]}}},"optional":true},"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"zookeeper_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.zookeeper_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"aadds_resource_id":{"type":"string","required":true},"cluster_users_group_dns":{"type":["set","string"],"optional":true},"domain_name":{"type":"string","required":true},"domain_user_password":{"type":"string","required":true},"domain_username":{"type":"string","required":true},"ldaps_urls":{"type":["set","string"],"required":true},"msi_resource_id":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","required":true},"storage_account_key":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","optional":true}}},"optional":true},"storage_account_gen2":{"nesting_mode":3,"block":{"attributes":{"filesystem_id":{"type":"string","required":true},"is_default":{"type":"bool","required":true},"managed_identity_resource_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_hdinsight_hbase_cluster":{"block":{"attributes":{"cluster_version":{"type":"string","required":true},"https_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssh_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","required":true},"tls_min_version":{"type":"string","optional":true}},"block_types":{"component_version":{"nesting_mode":3,"block":{"attributes":{"hbase":{"type":"string","required":true}}},"required":true},"compute_isolation":{"nesting_mode":3,"block":{"attributes":{"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"host_sku":{"type":"string","optional":true}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"encryption_algorithm":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"key_vault_managed_identity_id":{"type":"string","optional":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"gateway":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"required":true},"metastores":{"nesting_mode":3,"block":{"block_types":{"ambari":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"hive":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"oozie":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}},"optional":true},"monitor":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"network":{"nesting_mode":3,"block":{"attributes":{"connection_direction":{"type":"string","optional":true,"default":"Inbound"},"private_link_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"private_link_configuration":{"nesting_mode":3,"block":{"attributes":{"group_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}},"optional":true},"roles":{"nesting_mode":3,"block":{"block_types":{"head_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.head_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"worker_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.worker_node.0.password"]},"subnet_id":{"type":"string","optional":true},"target_instance_count":{"type":"number","required":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"autoscale":{"nesting_mode":3,"block":{"block_types":{"recurrence":{"nesting_mode":3,"block":{"attributes":{"timezone":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"days":{"type":["list","string"],"required":true},"target_instance_count":{"type":"number","required":true},"time":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true},"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"zookeeper_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.zookeeper_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"aadds_resource_id":{"type":"string","required":true},"cluster_users_group_dns":{"type":["set","string"],"optional":true},"domain_name":{"type":"string","required":true},"domain_user_password":{"type":"string","required":true},"domain_username":{"type":"string","required":true},"ldaps_urls":{"type":["set","string"],"required":true},"msi_resource_id":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","required":true},"storage_account_key":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","optional":true}}},"optional":true},"storage_account_gen2":{"nesting_mode":3,"block":{"attributes":{"filesystem_id":{"type":"string","required":true},"is_default":{"type":"bool","required":true},"managed_identity_resource_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_hdinsight_interactive_query_cluster":{"block":{"attributes":{"cluster_version":{"type":"string","required":true},"encryption_in_transit_enabled":{"type":"bool","optional":true},"https_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssh_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","required":true},"tls_min_version":{"type":"string","optional":true}},"block_types":{"component_version":{"nesting_mode":3,"block":{"attributes":{"interactive_hive":{"type":"string","required":true}}},"required":true},"compute_isolation":{"nesting_mode":3,"block":{"attributes":{"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"host_sku":{"type":"string","optional":true}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"encryption_algorithm":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"key_vault_managed_identity_id":{"type":"string","optional":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"gateway":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"required":true},"metastores":{"nesting_mode":3,"block":{"block_types":{"ambari":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"hive":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"oozie":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}},"optional":true},"monitor":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"network":{"nesting_mode":3,"block":{"attributes":{"connection_direction":{"type":"string","optional":true,"default":"Inbound"},"private_link_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"private_link_configuration":{"nesting_mode":3,"block":{"attributes":{"group_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}},"optional":true},"roles":{"nesting_mode":3,"block":{"block_types":{"head_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.head_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"worker_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.worker_node.0.password"]},"subnet_id":{"type":"string","optional":true},"target_instance_count":{"type":"number","required":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"autoscale":{"nesting_mode":3,"block":{"block_types":{"recurrence":{"nesting_mode":3,"block":{"attributes":{"timezone":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"days":{"type":["list","string"],"required":true},"target_instance_count":{"type":"number","required":true},"time":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true},"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"zookeeper_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.zookeeper_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"aadds_resource_id":{"type":"string","required":true},"cluster_users_group_dns":{"type":["set","string"],"optional":true},"domain_name":{"type":"string","required":true},"domain_user_password":{"type":"string","required":true},"domain_username":{"type":"string","required":true},"ldaps_urls":{"type":["set","string"],"required":true},"msi_resource_id":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","required":true},"storage_account_key":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","optional":true}}},"optional":true},"storage_account_gen2":{"nesting_mode":3,"block":{"attributes":{"filesystem_id":{"type":"string","required":true},"is_default":{"type":"bool","required":true},"managed_identity_resource_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_hdinsight_kafka_cluster":{"block":{"attributes":{"cluster_version":{"type":"string","required":true},"encryption_in_transit_enabled":{"type":"bool","optional":true},"https_endpoint":{"type":"string","computed":true},"kafka_rest_proxy_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssh_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","required":true},"tls_min_version":{"type":"string","optional":true}},"block_types":{"component_version":{"nesting_mode":3,"block":{"attributes":{"kafka":{"type":"string","required":true}}},"required":true},"compute_isolation":{"nesting_mode":3,"block":{"attributes":{"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"host_sku":{"type":"string","optional":true}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"encryption_algorithm":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"key_vault_managed_identity_id":{"type":"string","optional":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"gateway":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"required":true},"metastores":{"nesting_mode":3,"block":{"block_types":{"ambari":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"hive":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"oozie":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}},"optional":true},"monitor":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"network":{"nesting_mode":3,"block":{"attributes":{"connection_direction":{"type":"string","optional":true,"default":"Inbound"},"private_link_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"private_link_configuration":{"nesting_mode":3,"block":{"attributes":{"group_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}},"optional":true},"rest_proxy":{"nesting_mode":3,"block":{"attributes":{"security_group_id":{"type":"string","required":true},"security_group_name":{"type":"string","required":true}}},"optional":true,"required_with":["roles.0.kafka_management_node"]},"roles":{"nesting_mode":3,"block":{"block_types":{"head_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.head_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"kafka_management_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.kafka_management_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","computed":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"optional":true},"worker_node":{"nesting_mode":3,"block":{"attributes":{"number_of_disks_per_node":{"type":"number","required":true},"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.worker_node.0.password"]},"subnet_id":{"type":"string","optional":true},"target_instance_count":{"type":"number","required":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"zookeeper_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.zookeeper_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"aadds_resource_id":{"type":"string","required":true},"cluster_users_group_dns":{"type":["set","string"],"optional":true},"domain_name":{"type":"string","required":true},"domain_user_password":{"type":"string","required":true},"domain_username":{"type":"string","required":true},"ldaps_urls":{"type":["set","string"],"required":true},"msi_resource_id":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","required":true},"storage_account_key":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","optional":true}}},"optional":true},"storage_account_gen2":{"nesting_mode":3,"block":{"attributes":{"filesystem_id":{"type":"string","required":true},"is_default":{"type":"bool","required":true},"managed_identity_resource_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_hdinsight_spark_cluster":{"block":{"attributes":{"cluster_version":{"type":"string","required":true},"encryption_in_transit_enabled":{"type":"bool","optional":true},"https_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssh_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","required":true},"tls_min_version":{"type":"string","optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"component_version":{"nesting_mode":3,"block":{"attributes":{"spark":{"type":"string","required":true}}},"required":true},"compute_isolation":{"nesting_mode":3,"block":{"attributes":{"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"host_sku":{"type":"string","optional":true}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"encryption_algorithm":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"key_vault_managed_identity_id":{"type":"string","optional":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"gateway":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"required":true},"metastores":{"nesting_mode":3,"block":{"block_types":{"ambari":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"hive":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"oozie":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}},"optional":true},"monitor":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"network":{"nesting_mode":3,"block":{"attributes":{"connection_direction":{"type":"string","optional":true,"default":"Inbound"},"private_link_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"private_link_configuration":{"nesting_mode":3,"block":{"attributes":{"group_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}},"optional":true},"roles":{"nesting_mode":3,"block":{"block_types":{"head_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.head_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"worker_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.worker_node.0.password"]},"subnet_id":{"type":"string","optional":true},"target_instance_count":{"type":"number","required":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"autoscale":{"nesting_mode":3,"block":{"block_types":{"capacity":{"nesting_mode":3,"block":{"attributes":{"max_instance_count":{"type":"number","required":true},"min_instance_count":{"type":"number","required":true}}},"optional":true,"conflicts_with":["roles.0.worker_node.0.autoscale.0.recurrence"]},"recurrence":{"nesting_mode":3,"block":{"attributes":{"timezone":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"days":{"type":["list","string"],"required":true},"target_instance_count":{"type":"number","required":true},"time":{"type":"string","required":true}}},"required":true}}},"optional":true,"conflicts_with":["roles.0.worker_node.0.autoscale.0.capacity"]}}},"optional":true},"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"zookeeper_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.zookeeper_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"aadds_resource_id":{"type":"string","required":true},"cluster_users_group_dns":{"type":["set","string"],"optional":true},"domain_name":{"type":"string","required":true},"domain_user_password":{"type":"string","required":true},"domain_username":{"type":"string","required":true},"ldaps_urls":{"type":["set","string"],"required":true},"msi_resource_id":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","required":true},"storage_account_key":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","optional":true}}},"optional":true},"storage_account_gen2":{"nesting_mode":3,"block":{"attributes":{"filesystem_id":{"type":"string","required":true},"is_default":{"type":"bool","required":true},"managed_identity_resource_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_healthbot":{"block":{"attributes":{"bot_management_portal_url":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_healthcare_dicom_service":{"block":{"attributes":{"authentication":{"type":["list",["object",{"audience":["list","string"],"authority":"string"}]],"computed":true},"data_partitions_enabled":{"type":"bool","optional":true,"default":false},"encryption_key_url":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_endpoint":{"type":["set",["object",{"id":"string","name":"string"}]],"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"service_url":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allow_credentials":{"type":"bool","optional":true,"default":false},"allowed_headers":{"type":["list","string"],"optional":true},"allowed_methods":{"type":["list","string"],"optional":true},"allowed_origins":{"type":["list","string"],"optional":true},"max_age_in_seconds":{"type":"number","optional":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"storage":{"nesting_mode":3,"block":{"attributes":{"file_system_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_healthcare_fhir_service":{"block":{"attributes":{"access_policy_object_ids":{"type":["set","string"],"optional":true},"configuration_export_storage_account_name":{"type":"string","optional":true},"container_registry_login_server_url":{"type":["set","string"],"optional":true},"kind":{"type":"string","optional":true,"default":"fhir-R4"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"audience":{"type":"string","required":true},"authority":{"type":"string","required":true},"smart_proxy_enabled":{"type":"bool","optional":true}}},"required":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["set","string"],"required":true},"allowed_methods":{"type":["set","string"],"required":true},"allowed_origins":{"type":["set","string"],"required":true},"credentials_allowed":{"type":"bool","optional":true,"default":false},"max_age_in_seconds":{"type":"number","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"oci_artifact":{"nesting_mode":3,"block":{"attributes":{"digest":{"type":"string","optional":true},"image_name":{"type":"string","optional":true},"login_server":{"type":"string","required":true}}},"optional":true}}}},"azurerm_healthcare_medtech_service":{"block":{"attributes":{"device_mapping_json":{"type":"string","required":true},"eventhub_consumer_group_name":{"type":"string","required":true},"eventhub_name":{"type":"string","required":true},"eventhub_namespace_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_healthcare_medtech_service_fhir_destination":{"block":{"attributes":{"destination_fhir_mapping_json":{"type":"string","required":true},"destination_fhir_service_id":{"type":"string","required":true},"destination_identity_resolution_type":{"type":"string","required":true},"location":{"type":"string","required":true},"medtech_service_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_healthcare_service":{"block":{"attributes":{"access_policy_object_ids":{"type":["set","string"],"optional":true},"configuration_export_storage_account_name":{"type":"string","optional":true},"cosmosdb_key_vault_key_versionless_id":{"type":"string","optional":true},"cosmosdb_throughput":{"type":"number","optional":true,"default":1000},"kind":{"type":"string","optional":true,"default":"fhir"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"authentication_configuration":{"nesting_mode":3,"block":{"attributes":{"audience":{"type":"string","optional":true,"at_least_one_of":["authentication_configuration.0.authority","authentication_configuration.0.audience","authentication_configuration.0.smart_proxy_enabled"]},"authority":{"type":"string","optional":true,"at_least_one_of":["authentication_configuration.0.authority","authentication_configuration.0.audience","authentication_configuration.0.smart_proxy_enabled"]},"smart_proxy_enabled":{"type":"bool","optional":true,"at_least_one_of":["authentication_configuration.0.authority","authentication_configuration.0.audience","authentication_configuration.0.smart_proxy_enabled"]}}},"optional":true,"computed":true},"cors_configuration":{"nesting_mode":3,"block":{"attributes":{"allow_credentials":{"type":"bool","optional":true,"at_least_one_of":["cors_configuration.0.allowed_origins","cors_configuration.0.allowed_headers","cors_configuration.0.allowed_methods","cors_configuration.0.max_age_in_seconds","cors_configuration.0.allow_credentials"]},"allowed_headers":{"type":["set","string"],"optional":true,"at_least_one_of":["cors_configuration.0.allowed_origins","cors_configuration.0.allowed_headers","cors_configuration.0.allowed_methods","cors_configuration.0.max_age_in_seconds","cors_configuration.0.allow_credentials"]},"allowed_methods":{"type":["list","string"],"optional":true,"at_least_one_of":["cors_configuration.0.allowed_origins","cors_configuration.0.allowed_headers","cors_configuration.0.allowed_methods","cors_configuration.0.max_age_in_seconds","cors_configuration.0.allow_credentials"]},"allowed_origins":{"type":["set","string"],"optional":true,"at_least_one_of":["cors_configuration.0.allowed_origins","cors_configuration.0.allowed_headers","cors_configuration.0.allowed_methods","cors_configuration.0.max_age_in_seconds","cors_configuration.0.allow_credentials"]},"max_age_in_seconds":{"type":"number","optional":true,"at_least_one_of":["cors_configuration.0.allowed_origins","cors_configuration.0.allowed_headers","cors_configuration.0.allowed_methods","cors_configuration.0.max_age_in_seconds","cors_configuration.0.allow_credentials"]}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_healthcare_workspace":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_endpoint_connection":{"type":["set",["object",{"id":"string","name":"string"}]],"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_hpc_cache":{"block":{"attributes":{"automatically_rotate_key_to_latest_enabled":{"type":"bool","optional":true,"required_with":["key_vault_key_id"]},"cache_size_in_gb":{"type":"number","required":true},"key_vault_key_id":{"type":"string","optional":true,"required_with":["identity"]},"location":{"type":"string","required":true},"mount_addresses":{"type":["list","string"],"computed":true},"mtu":{"type":"number","optional":true,"default":1500},"name":{"type":"string","required":true},"ntp_server":{"type":"string","optional":true,"default":"time.windows.com"},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"default_access_policy":{"nesting_mode":3,"block":{"block_types":{"access_rule":{"nesting_mode":4,"block":{"attributes":{"access":{"type":"string","required":true},"anonymous_gid":{"type":"number","optional":true},"anonymous_uid":{"type":"number","optional":true},"filter":{"type":"string","optional":true},"root_squash_enabled":{"type":"bool","optional":true},"scope":{"type":"string","required":true},"submount_access_enabled":{"type":"bool","optional":true},"suid_enabled":{"type":"bool","optional":true}}},"required":true}}},"optional":true,"computed":true},"directory_active_directory":{"nesting_mode":3,"block":{"attributes":{"cache_netbios_name":{"type":"string","required":true},"dns_primary_ip":{"type":"string","required":true},"dns_secondary_ip":{"type":"string","optional":true},"domain_name":{"type":"string","required":true},"domain_netbios_name":{"type":"string","required":true},"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true,"conflicts_with":["directory_flat_file","directory_ldap"]},"directory_flat_file":{"nesting_mode":3,"block":{"attributes":{"group_file_uri":{"type":"string","required":true},"password_file_uri":{"type":"string","required":true}}},"optional":true,"conflicts_with":["directory_active_directory","directory_ldap"]},"directory_ldap":{"nesting_mode":3,"block":{"attributes":{"base_dn":{"type":"string","required":true},"certificate_validation_uri":{"type":"string","optional":true},"download_certificate_automatically":{"type":"bool","optional":true,"required_with":["directory_ldap.0.certificate_validation_uri"]},"encrypted":{"type":"bool","optional":true},"server":{"type":"string","required":true}},"block_types":{"bind":{"nesting_mode":3,"block":{"attributes":{"dn":{"type":"string","required":true},"password":{"type":"string","required":true}}},"optional":true,"computed":true}}},"optional":true,"conflicts_with":["directory_active_directory","directory_flat_file"]},"dns":{"nesting_mode":3,"block":{"attributes":{"search_domain":{"type":"string","optional":true},"servers":{"type":["list","string"],"required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_hpc_cache_access_policy":{"block":{"attributes":{"hpc_cache_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"access_rule":{"nesting_mode":4,"block":{"attributes":{"access":{"type":"string","required":true},"anonymous_gid":{"type":"number","optional":true},"anonymous_uid":{"type":"number","optional":true},"filter":{"type":"string","optional":true},"root_squash_enabled":{"type":"bool","optional":true},"scope":{"type":"string","required":true},"submount_access_enabled":{"type":"bool","optional":true},"suid_enabled":{"type":"bool","optional":true}}},"required":true}}}},"azurerm_hpc_cache_blob_nfs_target":{"block":{"attributes":{"access_policy_name":{"type":"string","optional":true,"default":"default"},"cache_name":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace_path":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"usage_model":{"type":"string","required":true},"verification_timer_in_seconds":{"type":"number","optional":true},"write_back_timer_in_seconds":{"type":"number","optional":true}}}},"azurerm_hpc_cache_blob_target":{"block":{"attributes":{"access_policy_name":{"type":"string","optional":true,"default":"default"},"cache_name":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace_path":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true}}}},"azurerm_hpc_cache_nfs_target":{"block":{"attributes":{"cache_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"target_host_name":{"type":"string","required":true},"usage_model":{"type":"string","required":true},"verification_timer_in_seconds":{"type":"number","optional":true},"write_back_timer_in_seconds":{"type":"number","optional":true}},"block_types":{"namespace_junction":{"nesting_mode":4,"block":{"attributes":{"access_policy_name":{"type":"string","optional":true,"default":"default"},"namespace_path":{"type":"string","required":true},"nfs_export":{"type":"string","required":true},"target_path":{"type":"string","optional":true,"default":""}}},"required":true}}}},"azurerm_image":{"block":{"attributes":{"hyper_v_generation":{"type":"string","optional":true,"default":"V1"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_virtual_machine_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"zone_resilient":{"type":"bool","optional":true,"default":false,"conflicts_with":["source_virtual_machine_id"]}},"block_types":{"data_disk":{"nesting_mode":3,"block":{"attributes":{"blob_uri":{"type":"string","optional":true,"computed":true},"caching":{"type":"string","optional":true,"default":"None"},"disk_encryption_set_id":{"type":"string","optional":true},"lun":{"type":"number","optional":true},"managed_disk_id":{"type":"string","optional":true},"size_gb":{"type":"number","optional":true,"computed":true},"storage_type":{"type":"string","required":true}}},"optional":true,"conflicts_with":["source_virtual_machine_id"]},"os_disk":{"nesting_mode":3,"block":{"attributes":{"blob_uri":{"type":"string","optional":true,"computed":true},"caching":{"type":"string","optional":true,"default":"None"},"disk_encryption_set_id":{"type":"string","optional":true},"managed_disk_id":{"type":"string","optional":true,"computed":true},"os_state":{"type":"string","optional":true},"os_type":{"type":"string","optional":true},"size_gb":{"type":"number","optional":true,"computed":true},"storage_type":{"type":"string","required":true}}},"optional":true,"conflicts_with":["source_virtual_machine_id"]}}}},"azurerm_iot_security_device_group":{"block":{"attributes":{"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"allow_rule":{"nesting_mode":3,"block":{"attributes":{"connection_from_ips_not_allowed":{"type":["set","string"],"optional":true,"at_least_one_of":["allow_rule.0.connection_from_ips_not_allowed","allow_rule.0.connection_to_ips_not_allowed","allow_rule.0.local_users_not_allowed","allow_rule.0.processes_not_allowed"]},"connection_to_ips_not_allowed":{"type":["set","string"],"optional":true,"at_least_one_of":["allow_rule.0.connection_from_ips_not_allowed","allow_rule.0.connection_to_ips_not_allowed","allow_rule.0.local_users_not_allowed","allow_rule.0.processes_not_allowed"]},"local_users_not_allowed":{"type":["set","string"],"optional":true,"at_least_one_of":["allow_rule.0.connection_from_ips_not_allowed","allow_rule.0.connection_to_ips_not_allowed","allow_rule.0.local_users_not_allowed","allow_rule.0.processes_not_allowed"]},"processes_not_allowed":{"type":["set","string"],"optional":true,"at_least_one_of":["allow_rule.0.connection_from_ips_not_allowed","allow_rule.0.connection_to_ips_not_allowed","allow_rule.0.local_users_not_allowed","allow_rule.0.processes_not_allowed"]}}},"optional":true},"range_rule":{"nesting_mode":4,"block":{"attributes":{"duration":{"type":"string","required":true},"max":{"type":"number","required":true},"min":{"type":"number","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_iot_security_solution":{"block":{"attributes":{"disabled_data_sources":{"type":["set","string"],"optional":true},"display_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"events_to_export":{"type":["set","string"],"optional":true},"iothub_ids":{"type":["set","string"],"required":true},"location":{"type":"string","required":true},"log_analytics_workspace_id":{"type":"string","optional":true},"log_unmasked_ips_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"query_for_resources":{"type":"string","optional":true,"computed":true},"query_subscription_ids":{"type":["set","string"],"optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"additional_workspace":{"nesting_mode":4,"block":{"attributes":{"data_types":{"type":["set","string"],"required":true},"workspace_id":{"type":"string","required":true}}},"optional":true},"recommendations_enabled":{"nesting_mode":3,"block":{"attributes":{"acr_authentication":{"type":"bool","optional":true,"default":true},"agent_send_unutilized_msg":{"type":"bool","optional":true,"default":true},"baseline":{"type":"bool","optional":true,"default":true},"edge_hub_mem_optimize":{"type":"bool","optional":true,"default":true},"edge_logging_option":{"type":"bool","optional":true,"default":true},"inconsistent_module_settings":{"type":"bool","optional":true,"default":true},"install_agent":{"type":"bool","optional":true,"default":true},"ip_filter_deny_all":{"type":"bool","optional":true,"default":true},"ip_filter_permissive_rule":{"type":"bool","optional":true,"default":true},"open_ports":{"type":"bool","optional":true,"default":true},"permissive_firewall_policy":{"type":"bool","optional":true,"default":true},"permissive_input_firewall_rules":{"type":"bool","optional":true,"default":true},"permissive_output_firewall_rules":{"type":"bool","optional":true,"default":true},"privileged_docker_options":{"type":"bool","optional":true,"default":true},"shared_credentials":{"type":"bool","optional":true,"default":true},"vulnerable_tls_cipher_suite":{"type":"bool","optional":true,"default":true}}},"optional":true,"computed":true}}}},"azurerm_iotcentral_application":{"block":{"attributes":{"display_name":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"ST1"},"sub_domain":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"template":{"type":"string","optional":true,"default":"iotc-pnp-preview@1.0.0"}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_iotcentral_application_network_rule_set":{"block":{"attributes":{"apply_to_device":{"type":"bool","optional":true,"default":true},"default_action":{"type":"string","optional":true,"default":"Deny"},"iotcentral_application_id":{"type":"string","required":true}},"block_types":{"ip_rule":{"nesting_mode":3,"block":{"attributes":{"ip_mask":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_iotcentral_organization":{"block":{"attributes":{"display_name":{"type":"string","required":true},"iotcentral_application_id":{"type":"string","required":true},"organization_id":{"type":"string","required":true},"parent_organization_id":{"type":"string","optional":true}}}},"azurerm_iothub":{"block":{"attributes":{"endpoint":{"type":["list",["object",{"authentication_type":"string","batch_frequency_in_seconds":"number","connection_string":"string","container_name":"string","encoding":"string","endpoint_uri":"string","entity_path":"string","file_name_format":"string","identity_id":"string","max_chunk_size_in_bytes":"number","name":"string","resource_group_name":"string","subscription_id":"string","type":"string"}]],"optional":true,"computed":true},"enrichment":{"type":["list",["object",{"endpoint_names":["list","string"],"key":"string","value":"string"}]],"optional":true,"computed":true},"event_hub_events_endpoint":{"type":"string","computed":true},"event_hub_events_namespace":{"type":"string","computed":true},"event_hub_events_path":{"type":"string","computed":true},"event_hub_operations_endpoint":{"type":"string","computed":true},"event_hub_operations_path":{"type":"string","computed":true},"event_hub_partition_count":{"type":"number","optional":true,"default":4},"event_hub_retention_in_days":{"type":"number","optional":true,"default":1},"hostname":{"type":"string","computed":true},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"min_tls_version":{"type":"string","optional":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"route":{"type":["list",["object",{"condition":"string","enabled":"bool","endpoint_names":["list","string"],"name":"string","source":"string"}]],"optional":true,"computed":true},"shared_access_policy":{"type":["list",["object",{"key_name":"string","permissions":"string","primary_key":"string","secondary_key":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","computed":true}},"block_types":{"cloud_to_device":{"nesting_mode":3,"block":{"attributes":{"default_ttl":{"type":"string","optional":true,"default":"PT1H"},"max_delivery_count":{"type":"number","optional":true,"default":10}},"block_types":{"feedback":{"nesting_mode":3,"block":{"attributes":{"lock_duration":{"type":"string","optional":true,"default":"PT60S"},"max_delivery_count":{"type":"number","optional":true,"default":10},"time_to_live":{"type":"string","optional":true,"default":"PT1H"}}},"optional":true}}},"optional":true,"computed":true},"fallback_route":{"nesting_mode":3,"block":{"attributes":{"condition":{"type":"string","optional":true,"default":"true"},"enabled":{"type":"bool","optional":true,"default":true},"endpoint_names":{"type":["list","string"],"optional":true,"computed":true},"source":{"type":"string","optional":true,"default":"DeviceMessages"}}},"optional":true,"computed":true},"file_upload":{"nesting_mode":3,"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"connection_string":{"type":"string","required":true},"container_name":{"type":"string","required":true},"default_ttl":{"type":"string","optional":true,"default":"PT1H"},"identity_id":{"type":"string","optional":true},"lock_duration":{"type":"string","optional":true,"default":"PT1M"},"max_delivery_count":{"type":"number","optional":true,"default":10},"notifications":{"type":"bool","optional":true,"default":false},"sas_ttl":{"type":"string","optional":true,"default":"PT1H"}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_rule_set":{"nesting_mode":3,"block":{"attributes":{"apply_to_builtin_eventhub_endpoint":{"type":"bool","optional":true,"default":false},"default_action":{"type":"string","optional":true,"default":"Deny"}},"block_types":{"ip_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"ip_mask":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_iothub_certificate":{"block":{"attributes":{"certificate_content":{"type":"string","required":true},"iothub_name":{"type":"string","required":true},"is_verified":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_iothub_consumer_group":{"block":{"attributes":{"eventhub_endpoint_name":{"type":"string","required":true},"iothub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_iothub_device_update_account":{"block":{"attributes":{"host_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Standard"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_iothub_device_update_instance":{"block":{"attributes":{"device_update_account_id":{"type":"string","required":true},"diagnostic_enabled":{"type":"bool","optional":true,"default":false},"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"diagnostic_storage_account":{"nesting_mode":3,"block":{"attributes":{"connection_string":{"type":"string","required":true},"id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_iothub_dps":{"block":{"attributes":{"allocation_policy":{"type":"string","optional":true,"default":"Hashed"},"data_residency_enabled":{"type":"bool","optional":true,"default":false},"device_provisioning_host_name":{"type":"string","computed":true},"id_scope":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_operations_host_name":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ip_filter_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"ip_mask":{"type":"string","required":true},"name":{"type":"string","required":true},"target":{"type":"string","optional":true}}},"optional":true},"linked_hub":{"nesting_mode":3,"block":{"attributes":{"allocation_weight":{"type":"number","optional":true,"default":1},"apply_allocation_policy":{"type":"bool","optional":true,"default":true},"connection_string":{"type":"string","required":true},"hostname":{"type":"string","computed":true},"location":{"type":"string","required":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_iothub_dps_certificate":{"block":{"attributes":{"certificate_content":{"type":"string","required":true},"iot_dps_name":{"type":"string","required":true},"is_verified":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_iothub_dps_shared_access_policy":{"block":{"attributes":{"enrollment_read":{"type":"bool","optional":true,"default":false},"enrollment_write":{"type":"bool","optional":true,"default":false},"iothub_dps_name":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"registration_read":{"type":"bool","optional":true,"default":false},"registration_write":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"service_config":{"type":"bool","optional":true,"default":false}}}},"azurerm_iothub_endpoint_cosmosdb_account":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"container_name":{"type":"string","required":true},"database_name":{"type":"string","required":true},"endpoint_uri":{"type":"string","required":true},"identity_id":{"type":"string","optional":true,"conflicts_with":["primary_key","secondary_key"]},"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true},"partition_key_name":{"type":"string","optional":true,"required_with":["partition_key_template"]},"partition_key_template":{"type":"string","optional":true,"required_with":["partition_key_name"]},"primary_key":{"type":"string","optional":true,"conflicts_with":["identity_id"],"required_with":["secondary_key"]},"resource_group_name":{"type":"string","required":true},"secondary_key":{"type":"string","optional":true,"conflicts_with":["identity_id"],"required_with":["primary_key"]},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_iothub_endpoint_eventhub":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"connection_string":{"type":"string","optional":true,"conflicts_with":["identity_id"],"exactly_one_of":["endpoint_uri","connection_string"]},"endpoint_uri":{"type":"string","optional":true,"exactly_one_of":["endpoint_uri","connection_string"],"required_with":["entity_path"]},"entity_path":{"type":"string","optional":true,"required_with":["endpoint_uri"]},"identity_id":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_iothub_endpoint_servicebus_queue":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"connection_string":{"type":"string","optional":true,"conflicts_with":["identity_id"],"exactly_one_of":["endpoint_uri","connection_string"]},"endpoint_uri":{"type":"string","optional":true,"exactly_one_of":["endpoint_uri","connection_string"],"required_with":["entity_path"]},"entity_path":{"type":"string","optional":true,"required_with":["endpoint_uri"]},"identity_id":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_iothub_endpoint_servicebus_topic":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"connection_string":{"type":"string","optional":true,"conflicts_with":["identity_id"],"exactly_one_of":["endpoint_uri","connection_string"]},"endpoint_uri":{"type":"string","optional":true,"exactly_one_of":["endpoint_uri","connection_string"],"required_with":["entity_path"]},"entity_path":{"type":"string","optional":true,"required_with":["endpoint_uri"]},"identity_id":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_iothub_endpoint_storage_container":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"batch_frequency_in_seconds":{"type":"number","optional":true,"default":300},"connection_string":{"type":"string","optional":true,"conflicts_with":["identity_id"],"exactly_one_of":["endpoint_uri","connection_string"]},"container_name":{"type":"string","required":true},"encoding":{"type":"string","optional":true,"default":"Avro"},"endpoint_uri":{"type":"string","optional":true,"exactly_one_of":["endpoint_uri","connection_string"]},"file_name_format":{"type":"string","optional":true,"default":"{iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}"},"identity_id":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"iothub_id":{"type":"string","required":true},"max_chunk_size_in_bytes":{"type":"number","optional":true,"default":314572800},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_iothub_enrichment":{"block":{"attributes":{"endpoint_names":{"type":["list","string"],"required":true},"iothub_name":{"type":"string","required":true},"key":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_iothub_fallback_route":{"block":{"attributes":{"condition":{"type":"string","optional":true,"default":"true"},"enabled":{"type":"bool","required":true},"endpoint_names":{"type":["list","string"],"required":true},"iothub_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source":{"type":"string","optional":true,"default":"DeviceMessages"}}}},"azurerm_iothub_file_upload":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"connection_string":{"type":"string","required":true},"container_name":{"type":"string","required":true},"default_ttl":{"type":"string","optional":true,"default":"PT1H"},"identity_id":{"type":"string","optional":true},"iothub_id":{"type":"string","required":true},"lock_duration":{"type":"string","optional":true,"default":"PT1M"},"max_delivery_count":{"type":"number","optional":true,"default":10},"notifications_enabled":{"type":"bool","optional":true,"default":false},"sas_ttl":{"type":"string","optional":true,"default":"PT1H"}}}},"azurerm_iothub_route":{"block":{"attributes":{"condition":{"type":"string","optional":true,"default":"true"},"enabled":{"type":"bool","required":true},"endpoint_names":{"type":["list","string"],"required":true},"iothub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source":{"type":"string","required":true}}}},"azurerm_iothub_shared_access_policy":{"block":{"attributes":{"device_connect":{"type":"bool","optional":true,"default":false},"iothub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"registry_read":{"type":"bool","optional":true,"default":false},"registry_write":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"service_connect":{"type":"bool","optional":true,"default":false}}}},"azurerm_ip_group":{"block":{"attributes":{"cidrs":{"type":["set","string"],"optional":true},"firewall_ids":{"type":["list","string"],"computed":true},"firewall_policy_ids":{"type":["list","string"],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_ip_group_cidr":{"block":{"attributes":{"cidr":{"type":"string","required":true},"ip_group_id":{"type":"string","required":true}}}},"azurerm_key_vault":{"block":{"attributes":{"access_policy":{"type":["list",["object",{"application_id":"string","certificate_permissions":["list","string"],"key_permissions":["list","string"],"object_id":"string","secret_permissions":["list","string"],"storage_permissions":["list","string"],"tenant_id":"string"}]],"optional":true,"computed":true},"enable_rbac_authorization":{"type":"bool","optional":true,"computed":true,"conflicts_with":["rbac_authorization_enabled"]},"enabled_for_deployment":{"type":"bool","optional":true},"enabled_for_disk_encryption":{"type":"bool","optional":true},"enabled_for_template_deployment":{"type":"bool","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"purge_protection_enabled":{"type":"bool","optional":true},"rbac_authorization_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["enable_rbac_authorization"]},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"soft_delete_retention_days":{"type":"number","optional":true,"default":90},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","required":true},"vault_uri":{"type":"string","computed":true}},"block_types":{"contact":{"nesting_mode":4,"block":{"attributes":{"email":{"type":"string","required":true},"name":{"type":"string","optional":true},"phone":{"type":"string","optional":true}}},"optional":true,"computed":true},"network_acls":{"nesting_mode":3,"block":{"attributes":{"bypass":{"type":"string","required":true},"default_action":{"type":"string","required":true},"ip_rules":{"type":["set","string"],"optional":true},"virtual_network_subnet_ids":{"type":["set","string"],"optional":true}}},"optional":true,"computed":true}}}},"azurerm_key_vault_access_policy":{"block":{"attributes":{"application_id":{"type":"string","optional":true},"certificate_permissions":{"type":["list","string"],"optional":true},"key_permissions":{"type":["list","string"],"optional":true},"key_vault_id":{"type":"string","required":true},"object_id":{"type":"string","required":true},"secret_permissions":{"type":["list","string"],"optional":true},"storage_permissions":{"type":["list","string"],"optional":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_key_vault_certificate":{"block":{"attributes":{"certificate_attribute":{"type":["list",["object",{"created":"string","enabled":"bool","expires":"string","not_before":"string","recovery_level":"string","updated":"string"}]],"computed":true},"certificate_data":{"type":"string","computed":true},"certificate_data_base64":{"type":"string","computed":true},"key_vault_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"resource_manager_versionless_id":{"type":"string","computed":true},"secret_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"thumbprint":{"type":"string","computed":true},"version":{"type":"string","computed":true},"versionless_id":{"type":"string","computed":true},"versionless_secret_id":{"type":"string","computed":true}},"block_types":{"certificate":{"nesting_mode":3,"block":{"attributes":{"contents":{"type":"string","required":true},"password":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["certificate_policy","certificate"]},"certificate_policy":{"nesting_mode":3,"block":{"block_types":{"issuer_parameters":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}}},"required":true},"key_properties":{"nesting_mode":3,"block":{"attributes":{"curve":{"type":"string","optional":true,"computed":true},"exportable":{"type":"bool","required":true},"key_size":{"type":"number","optional":true,"computed":true},"key_type":{"type":"string","required":true},"reuse_key":{"type":"bool","required":true}}},"required":true},"lifetime_action":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true}}},"required":true},"trigger":{"nesting_mode":3,"block":{"attributes":{"days_before_expiry":{"type":"number","optional":true},"lifetime_percentage":{"type":"number","optional":true}}},"required":true}}},"optional":true},"secret_properties":{"nesting_mode":3,"block":{"attributes":{"content_type":{"type":"string","required":true}}},"required":true},"x509_certificate_properties":{"nesting_mode":3,"block":{"attributes":{"extended_key_usage":{"type":["list","string"],"optional":true,"computed":true},"key_usage":{"type":["set","string"],"required":true},"subject":{"type":"string","required":true},"validity_in_months":{"type":"number","required":true}},"block_types":{"subject_alternative_names":{"nesting_mode":3,"block":{"attributes":{"dns_names":{"type":["set","string"],"optional":true,"at_least_one_of":["certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.emails","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.dns_names","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.upns"]},"emails":{"type":["set","string"],"optional":true,"at_least_one_of":["certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.emails","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.dns_names","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.upns"]},"upns":{"type":["set","string"],"optional":true,"at_least_one_of":["certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.emails","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.dns_names","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.upns"]}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true,"at_least_one_of":["certificate_policy","certificate"]}}}},"azurerm_key_vault_certificate_contacts":{"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"contact":{"nesting_mode":4,"block":{"attributes":{"email":{"type":"string","required":true},"name":{"type":"string","optional":true},"phone":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_key_vault_certificate_issuer":{"block":{"attributes":{"account_id":{"type":"string","optional":true},"key_vault_id":{"type":"string","required":true},"name":{"type":"string","required":true},"org_id":{"type":"string","optional":true},"password":{"type":"string","optional":true},"provider_name":{"type":"string","required":true}},"block_types":{"admin":{"nesting_mode":3,"block":{"attributes":{"email_address":{"type":"string","required":true},"first_name":{"type":"string","optional":true},"last_name":{"type":"string","optional":true},"phone":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_key_vault_key":{"block":{"attributes":{"curve":{"type":"string","optional":true,"computed":true,"conflicts_with":["key_size"]},"e":{"type":"string","computed":true},"expiration_date":{"type":"string","optional":true},"key_opts":{"type":["list","string"],"required":true},"key_size":{"type":"number","optional":true,"conflicts_with":["curve"]},"key_type":{"type":"string","required":true},"key_vault_id":{"type":"string","required":true},"n":{"type":"string","computed":true},"name":{"type":"string","required":true},"not_before_date":{"type":"string","optional":true},"public_key_openssh":{"type":"string","computed":true},"public_key_pem":{"type":"string","computed":true},"resource_id":{"type":"string","computed":true},"resource_versionless_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","computed":true},"versionless_id":{"type":"string","computed":true},"x":{"type":"string","computed":true},"y":{"type":"string","computed":true}},"block_types":{"rotation_policy":{"nesting_mode":3,"block":{"attributes":{"expire_after":{"type":"string","optional":true,"at_least_one_of":["rotation_policy.0.expire_after","rotation_policy.0.automatic"],"required_with":["rotation_policy.0.expire_after","rotation_policy.0.notify_before_expiry"]},"notify_before_expiry":{"type":"string","optional":true,"required_with":["rotation_policy.0.expire_after","rotation_policy.0.notify_before_expiry"]}},"block_types":{"automatic":{"nesting_mode":3,"block":{"attributes":{"time_after_creation":{"type":"string","optional":true,"at_least_one_of":["rotation_policy.0.automatic.0.time_after_creation","rotation_policy.0.automatic.0.time_before_expiry"]},"time_before_expiry":{"type":"string","optional":true,"at_least_one_of":["rotation_policy.0.automatic.0.time_after_creation","rotation_policy.0.automatic.0.time_before_expiry"]}}},"optional":true}}},"optional":true}}}},"azurerm_key_vault_managed_hardware_security_module":{"block":{"attributes":{"admin_object_ids":{"type":["set","string"],"required":true},"hsm_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"purge_protection_enabled":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"security_domain_encrypted_data":{"type":"string","computed":true},"security_domain_key_vault_certificate_ids":{"type":["list","string"],"optional":true,"required_with":["security_domain_quorum"]},"security_domain_quorum":{"type":"number","optional":true,"required_with":["security_domain_key_vault_certificate_ids"]},"sku_name":{"type":"string","required":true},"soft_delete_retention_days":{"type":"number","optional":true,"default":90},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","required":true}},"block_types":{"network_acls":{"nesting_mode":3,"block":{"attributes":{"bypass":{"type":"string","required":true},"default_action":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_key_vault_managed_hardware_security_module_key":{"block":{"attributes":{"curve":{"type":"string","optional":true,"exactly_one_of":["key_size"]},"expiration_date":{"type":"string","optional":true},"key_opts":{"type":["set","string"],"required":true},"key_size":{"type":"number","optional":true,"exactly_one_of":["curve"]},"key_type":{"type":"string","required":true},"managed_hsm_id":{"type":"string","required":true},"name":{"type":"string","required":true},"not_before_date":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"versioned_id":{"type":"string","computed":true}}}},"azurerm_key_vault_managed_hardware_security_module_key_rotation_policy":{"block":{"attributes":{"expire_after":{"type":"string","required":true},"managed_hsm_key_id":{"type":"string","required":true},"time_after_creation":{"type":"string","optional":true,"exactly_one_of":["time_after_creation","time_before_expiry"]},"time_before_expiry":{"type":"string","optional":true,"exactly_one_of":["time_after_creation","time_before_expiry"]}}}},"azurerm_key_vault_managed_hardware_security_module_role_assignment":{"block":{"attributes":{"managed_hsm_id":{"type":"string","required":true},"name":{"type":"string","required":true},"principal_id":{"type":"string","required":true},"resource_id":{"type":"string","computed":true},"role_definition_id":{"type":"string","required":true},"scope":{"type":"string","required":true}}}},"azurerm_key_vault_managed_hardware_security_module_role_definition":{"block":{"attributes":{"description":{"type":"string","optional":true},"managed_hsm_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"role_name":{"type":"string","optional":true},"role_type":{"type":"string","computed":true}},"block_types":{"permission":{"nesting_mode":3,"block":{"attributes":{"actions":{"type":["list","string"],"optional":true},"data_actions":{"type":["set","string"],"optional":true},"not_actions":{"type":["list","string"],"optional":true},"not_data_actions":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_key_vault_managed_storage_account":{"block":{"attributes":{"key_vault_id":{"type":"string","required":true},"name":{"type":"string","required":true},"regenerate_key_automatically":{"type":"bool","optional":true,"default":false,"required_with":["regeneration_period"]},"regeneration_period":{"type":"string","optional":true,"required_with":["regenerate_key_automatically"]},"storage_account_id":{"type":"string","required":true},"storage_account_key":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_key_vault_managed_storage_account_sas_token_definition":{"block":{"attributes":{"managed_storage_account_id":{"type":"string","required":true},"name":{"type":"string","required":true},"sas_template_uri":{"type":"string","required":true},"sas_type":{"type":"string","required":true},"secret_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"validity_period":{"type":"string","required":true}}}},"azurerm_key_vault_secret":{"block":{"attributes":{"content_type":{"type":"string","optional":true},"expiration_date":{"type":"string","optional":true},"key_vault_id":{"type":"string","required":true},"name":{"type":"string","required":true},"not_before_date":{"type":"string","optional":true},"resource_id":{"type":"string","computed":true},"resource_versionless_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"value":{"type":"string","optional":true,"exactly_one_of":["value","value_wo"]},"value_wo":{"type":"string","optional":true,"exactly_one_of":["value","value_wo"],"required_with":["value_wo_version"]},"value_wo_version":{"type":"number","optional":true,"required_with":["value_wo"]},"version":{"type":"string","computed":true},"versionless_id":{"type":"string","computed":true}}}},"azurerm_kubernetes_cluster":{"block":{"attributes":{"automatic_upgrade_channel":{"type":"string","optional":true},"azure_policy_enabled":{"type":"bool","optional":true},"cost_analysis_enabled":{"type":"bool","optional":true},"current_kubernetes_version":{"type":"string","computed":true},"custom_ca_trust_certificates_base64":{"type":["list","string"],"optional":true},"disk_encryption_set_id":{"type":"string","optional":true},"dns_prefix":{"type":"string","optional":true,"exactly_one_of":["dns_prefix","dns_prefix_private_cluster"]},"dns_prefix_private_cluster":{"type":"string","optional":true,"exactly_one_of":["dns_prefix","dns_prefix_private_cluster"]},"edge_zone":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"http_application_routing_enabled":{"type":"bool","optional":true},"http_application_routing_zone_name":{"type":"string","computed":true},"image_cleaner_enabled":{"type":"bool","optional":true},"image_cleaner_interval_hours":{"type":"number","optional":true},"kube_admin_config":{"type":["list",["object",{"client_certificate":"string","client_key":"string","cluster_ca_certificate":"string","host":"string","password":"string","username":"string"}]],"computed":true},"kube_admin_config_raw":{"type":"string","computed":true},"kube_config":{"type":["list",["object",{"client_certificate":"string","client_key":"string","cluster_ca_certificate":"string","host":"string","password":"string","username":"string"}]],"computed":true},"kube_config_raw":{"type":"string","computed":true},"kubernetes_version":{"type":"string","optional":true,"computed":true},"local_account_disabled":{"type":"bool","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"node_os_upgrade_channel":{"type":"string","optional":true,"default":"NodeImage"},"node_resource_group":{"type":"string","optional":true,"computed":true},"node_resource_group_id":{"type":"string","computed":true},"oidc_issuer_enabled":{"type":"bool","optional":true},"oidc_issuer_url":{"type":"string","computed":true},"open_service_mesh_enabled":{"type":"bool","optional":true},"portal_fqdn":{"type":"string","computed":true},"private_cluster_enabled":{"type":"bool","optional":true,"default":false},"private_cluster_public_fqdn_enabled":{"type":"bool","optional":true,"default":false},"private_dns_zone_id":{"type":"string","optional":true,"computed":true},"private_fqdn":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"role_based_access_control_enabled":{"type":"bool","optional":true,"default":true},"run_command_enabled":{"type":"bool","optional":true,"default":true},"sku_tier":{"type":"string","optional":true,"default":"Free"},"support_plan":{"type":"string","optional":true,"default":"KubernetesOfficial"},"tags":{"type":["map","string"],"optional":true},"workload_identity_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"aci_connector_linux":{"nesting_mode":3,"block":{"attributes":{"connector_identity":{"type":["list",["object",{"client_id":"string","object_id":"string","user_assigned_identity_id":"string"}]],"computed":true},"subnet_name":{"type":"string","required":true}}},"optional":true},"api_server_access_profile":{"nesting_mode":3,"block":{"attributes":{"authorized_ip_ranges":{"type":["set","string"],"optional":true}}},"optional":true},"auto_scaler_profile":{"nesting_mode":3,"block":{"attributes":{"balance_similar_node_groups":{"type":"bool","optional":true,"default":false},"daemonset_eviction_for_empty_nodes_enabled":{"type":"bool","optional":true,"default":false},"daemonset_eviction_for_occupied_nodes_enabled":{"type":"bool","optional":true,"default":true},"empty_bulk_delete_max":{"type":"string","optional":true,"computed":true},"expander":{"type":"string","optional":true,"default":"random"},"ignore_daemonsets_utilization_enabled":{"type":"bool","optional":true,"default":false},"max_graceful_termination_sec":{"type":"string","optional":true,"computed":true},"max_node_provisioning_time":{"type":"string","optional":true,"default":"15m"},"max_unready_nodes":{"type":"number","optional":true,"default":3},"max_unready_percentage":{"type":"number","optional":true,"default":45},"new_pod_scale_up_delay":{"type":"string","optional":true,"computed":true},"scale_down_delay_after_add":{"type":"string","optional":true,"computed":true},"scale_down_delay_after_delete":{"type":"string","optional":true,"computed":true},"scale_down_delay_after_failure":{"type":"string","optional":true,"computed":true},"scale_down_unneeded":{"type":"string","optional":true,"computed":true},"scale_down_unready":{"type":"string","optional":true,"computed":true},"scale_down_utilization_threshold":{"type":"string","optional":true,"computed":true},"scan_interval":{"type":"string","optional":true,"computed":true},"skip_nodes_with_local_storage":{"type":"bool","optional":true},"skip_nodes_with_system_pods":{"type":"bool","optional":true,"default":true}}},"optional":true,"computed":true},"azure_active_directory_role_based_access_control":{"nesting_mode":3,"block":{"attributes":{"admin_group_object_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["azure_active_directory_role_based_access_control.0.tenant_id","azure_active_directory_role_based_access_control.0.admin_group_object_ids"]},"azure_rbac_enabled":{"type":"bool","optional":true},"tenant_id":{"type":"string","optional":true,"computed":true,"at_least_one_of":["azure_active_directory_role_based_access_control.0.tenant_id","azure_active_directory_role_based_access_control.0.admin_group_object_ids"]}}},"optional":true},"bootstrap_profile":{"nesting_mode":3,"block":{"attributes":{"artifact_source":{"type":"string","optional":true,"default":"Direct"},"container_registry_id":{"type":"string","optional":true}}},"optional":true,"computed":true},"confidential_computing":{"nesting_mode":3,"block":{"attributes":{"sgx_quote_helper_enabled":{"type":"bool","required":true}}},"optional":true},"default_node_pool":{"nesting_mode":3,"block":{"attributes":{"auto_scaling_enabled":{"type":"bool","optional":true},"capacity_reservation_group_id":{"type":"string","optional":true},"fips_enabled":{"type":"bool","optional":true},"gpu_driver":{"type":"string","optional":true},"gpu_instance":{"type":"string","optional":true},"host_encryption_enabled":{"type":"bool","optional":true},"host_group_id":{"type":"string","optional":true},"kubelet_disk_type":{"type":"string","optional":true,"computed":true},"max_count":{"type":"number","optional":true},"max_pods":{"type":"number","optional":true,"computed":true},"min_count":{"type":"number","optional":true},"name":{"type":"string","required":true},"node_count":{"type":"number","optional":true,"computed":true},"node_labels":{"type":["map","string"],"optional":true,"computed":true},"node_public_ip_enabled":{"type":"bool","optional":true},"node_public_ip_prefix_id":{"type":"string","optional":true,"required_with":["default_node_pool.0.node_public_ip_enabled"]},"only_critical_addons_enabled":{"type":"bool","optional":true},"orchestrator_version":{"type":"string","optional":true,"computed":true},"os_disk_size_gb":{"type":"number","optional":true,"computed":true},"os_disk_type":{"type":"string","optional":true,"default":"Managed"},"os_sku":{"type":"string","optional":true,"computed":true},"pod_subnet_id":{"type":"string","optional":true},"proximity_placement_group_id":{"type":"string","optional":true},"scale_down_mode":{"type":"string","optional":true,"default":"Delete"},"snapshot_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"temporary_name_for_rotation":{"type":"string","optional":true},"type":{"type":"string","optional":true,"default":"VirtualMachineScaleSets"},"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false},"vm_size":{"type":"string","optional":true,"computed":true},"vnet_subnet_id":{"type":"string","optional":true},"workload_runtime":{"type":"string","optional":true,"computed":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"kubelet_config":{"nesting_mode":3,"block":{"attributes":{"allowed_unsafe_sysctls":{"type":["set","string"],"optional":true},"container_log_max_line":{"type":"number","optional":true},"container_log_max_size_mb":{"type":"number","optional":true},"cpu_cfs_quota_enabled":{"type":"bool","optional":true,"default":true},"cpu_cfs_quota_period":{"type":"string","optional":true},"cpu_manager_policy":{"type":"string","optional":true},"image_gc_high_threshold":{"type":"number","optional":true},"image_gc_low_threshold":{"type":"number","optional":true},"pod_max_pid":{"type":"number","optional":true},"topology_manager_policy":{"type":"string","optional":true}}},"optional":true},"linux_os_config":{"nesting_mode":3,"block":{"attributes":{"swap_file_size_mb":{"type":"number","optional":true},"transparent_huge_page":{"type":"string","optional":true,"computed":true,"conflicts_with":["default_node_pool.0.linux_os_config.0.transparent_huge_page_enabled"]},"transparent_huge_page_defrag":{"type":"string","optional":true},"transparent_huge_page_enabled":{"type":"string","optional":true,"computed":true,"conflicts_with":["default_node_pool.0.linux_os_config.0.transparent_huge_page"]}},"block_types":{"sysctl_config":{"nesting_mode":3,"block":{"attributes":{"fs_aio_max_nr":{"type":"number","optional":true},"fs_file_max":{"type":"number","optional":true},"fs_inotify_max_user_watches":{"type":"number","optional":true},"fs_nr_open":{"type":"number","optional":true},"kernel_threads_max":{"type":"number","optional":true},"net_core_netdev_max_backlog":{"type":"number","optional":true},"net_core_optmem_max":{"type":"number","optional":true},"net_core_rmem_default":{"type":"number","optional":true},"net_core_rmem_max":{"type":"number","optional":true},"net_core_somaxconn":{"type":"number","optional":true},"net_core_wmem_default":{"type":"number","optional":true},"net_core_wmem_max":{"type":"number","optional":true},"net_ipv4_ip_local_port_range_max":{"type":"number","optional":true},"net_ipv4_ip_local_port_range_min":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh1":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh2":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh3":{"type":"number","optional":true},"net_ipv4_tcp_fin_timeout":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_intvl":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_probes":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_time":{"type":"number","optional":true},"net_ipv4_tcp_max_syn_backlog":{"type":"number","optional":true},"net_ipv4_tcp_max_tw_buckets":{"type":"number","optional":true},"net_ipv4_tcp_tw_reuse":{"type":"bool","optional":true},"net_netfilter_nf_conntrack_buckets":{"type":"number","optional":true},"net_netfilter_nf_conntrack_max":{"type":"number","optional":true},"vm_max_map_count":{"type":"number","optional":true},"vm_swappiness":{"type":"number","optional":true},"vm_vfs_cache_pressure":{"type":"number","optional":true}}},"optional":true}}},"optional":true},"node_network_profile":{"nesting_mode":3,"block":{"attributes":{"application_security_group_ids":{"type":["list","string"],"optional":true},"node_public_ip_tags":{"type":["map","string"],"optional":true}},"block_types":{"allowed_host_ports":{"nesting_mode":3,"block":{"attributes":{"port_end":{"type":"number","optional":true},"port_start":{"type":"number","optional":true},"protocol":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"upgrade_settings":{"nesting_mode":3,"block":{"attributes":{"drain_timeout_in_minutes":{"type":"number","optional":true},"max_surge":{"type":"string","required":true},"node_soak_duration_in_minutes":{"type":"number","optional":true}}},"optional":true}}},"required":true},"http_proxy_config":{"nesting_mode":3,"block":{"attributes":{"http_proxy":{"type":"string","optional":true},"https_proxy":{"type":"string","optional":true},"no_proxy":{"type":["set","string"],"optional":true},"trusted_ca":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"ingress_application_gateway":{"nesting_mode":3,"block":{"attributes":{"effective_gateway_id":{"type":"string","computed":true},"gateway_id":{"type":"string","optional":true,"conflicts_with":["ingress_application_gateway.0.subnet_cidr","ingress_application_gateway.0.subnet_id"],"at_least_one_of":["ingress_application_gateway.0.gateway_id","ingress_application_gateway.0.subnet_cidr","ingress_application_gateway.0.subnet_id"]},"gateway_name":{"type":"string","optional":true},"ingress_application_gateway_identity":{"type":["list",["object",{"client_id":"string","object_id":"string","user_assigned_identity_id":"string"}]],"computed":true},"subnet_cidr":{"type":"string","optional":true,"conflicts_with":["ingress_application_gateway.0.gateway_id","ingress_application_gateway.0.subnet_id"],"at_least_one_of":["ingress_application_gateway.0.gateway_id","ingress_application_gateway.0.subnet_cidr","ingress_application_gateway.0.subnet_id"]},"subnet_id":{"type":"string","optional":true,"conflicts_with":["ingress_application_gateway.0.gateway_id","ingress_application_gateway.0.subnet_cidr"],"at_least_one_of":["ingress_application_gateway.0.gateway_id","ingress_application_gateway.0.subnet_cidr","ingress_application_gateway.0.subnet_id"]}}},"optional":true},"key_management_service":{"nesting_mode":3,"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"key_vault_network_access":{"type":"string","optional":true,"default":"Public"}}},"optional":true},"key_vault_secrets_provider":{"nesting_mode":3,"block":{"attributes":{"secret_identity":{"type":["list",["object",{"client_id":"string","object_id":"string","user_assigned_identity_id":"string"}]],"computed":true},"secret_rotation_enabled":{"type":"bool","optional":true,"default":false,"at_least_one_of":["key_vault_secrets_provider.0.secret_rotation_enabled","key_vault_secrets_provider.0.secret_rotation_interval"]},"secret_rotation_interval":{"type":"string","optional":true,"default":"2m","at_least_one_of":["key_vault_secrets_provider.0.secret_rotation_enabled","key_vault_secrets_provider.0.secret_rotation_interval"]}}},"optional":true},"kubelet_identity":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true,"computed":true,"required_with":["kubelet_identity.0.object_id","kubelet_identity.0.user_assigned_identity_id","identity.0.identity_ids"]},"object_id":{"type":"string","optional":true,"computed":true,"required_with":["kubelet_identity.0.client_id","kubelet_identity.0.user_assigned_identity_id","identity.0.identity_ids"]},"user_assigned_identity_id":{"type":"string","optional":true,"computed":true,"required_with":["kubelet_identity.0.client_id","kubelet_identity.0.object_id","identity.0.identity_ids"]}}},"optional":true,"computed":true},"linux_profile":{"nesting_mode":3,"block":{"attributes":{"admin_username":{"type":"string","required":true}},"block_types":{"ssh_key":{"nesting_mode":3,"block":{"attributes":{"key_data":{"type":"string","required":true}}},"required":true}}},"optional":true},"maintenance_window":{"nesting_mode":3,"block":{"block_types":{"allowed":{"nesting_mode":4,"block":{"attributes":{"day":{"type":"string","required":true},"hours":{"type":["set","number"],"required":true}}},"optional":true,"at_least_one_of":["maintenance_window.0.allowed","maintenance_window.0.not_allowed"]},"not_allowed":{"nesting_mode":4,"block":{"attributes":{"end":{"type":"string","required":true},"start":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["maintenance_window.0.allowed","maintenance_window.0.not_allowed"]}}},"optional":true},"maintenance_window_auto_upgrade":{"nesting_mode":3,"block":{"attributes":{"day_of_month":{"type":"number","optional":true},"day_of_week":{"type":"string","optional":true},"duration":{"type":"number","required":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","required":true},"start_date":{"type":"string","optional":true,"computed":true},"start_time":{"type":"string","optional":true},"utc_offset":{"type":"string","optional":true},"week_index":{"type":"string","optional":true}},"block_types":{"not_allowed":{"nesting_mode":4,"block":{"attributes":{"end":{"type":"string","required":true},"start":{"type":"string","required":true}}},"optional":true}}},"optional":true},"maintenance_window_node_os":{"nesting_mode":3,"block":{"attributes":{"day_of_month":{"type":"number","optional":true},"day_of_week":{"type":"string","optional":true},"duration":{"type":"number","required":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","required":true},"start_date":{"type":"string","optional":true,"computed":true},"start_time":{"type":"string","optional":true},"utc_offset":{"type":"string","optional":true},"week_index":{"type":"string","optional":true}},"block_types":{"not_allowed":{"nesting_mode":4,"block":{"attributes":{"end":{"type":"string","required":true},"start":{"type":"string","required":true}}},"optional":true}}},"optional":true},"microsoft_defender":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true}}},"optional":true},"monitor_metrics":{"nesting_mode":3,"block":{"attributes":{"annotations_allowed":{"type":"string","optional":true},"labels_allowed":{"type":"string","optional":true}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"dns_service_ip":{"type":"string","optional":true,"computed":true},"ip_versions":{"type":["list","string"],"optional":true,"computed":true},"load_balancer_sku":{"type":"string","optional":true,"default":"standard"},"network_data_plane":{"type":"string","optional":true,"default":"azure"},"network_mode":{"type":"string","optional":true,"computed":true},"network_plugin":{"type":"string","required":true},"network_plugin_mode":{"type":"string","optional":true},"network_policy":{"type":"string","optional":true,"computed":true},"outbound_type":{"type":"string","optional":true,"default":"loadBalancer"},"pod_cidr":{"type":"string","optional":true,"computed":true},"pod_cidrs":{"type":["list","string"],"optional":true,"computed":true},"service_cidr":{"type":"string","optional":true,"computed":true},"service_cidrs":{"type":["list","string"],"optional":true,"computed":true}},"block_types":{"load_balancer_profile":{"nesting_mode":3,"block":{"attributes":{"backend_pool_type":{"type":"string","optional":true,"default":"NodeIPConfiguration"},"effective_outbound_ips":{"type":["set","string"],"computed":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":30},"managed_outbound_ip_count":{"type":"number","optional":true,"computed":true,"conflicts_with":["network_profile.0.load_balancer_profile.0.outbound_ip_prefix_ids","network_profile.0.load_balancer_profile.0.outbound_ip_address_ids"]},"managed_outbound_ipv6_count":{"type":"number","optional":true,"computed":true,"conflicts_with":["network_profile.0.load_balancer_profile.0.outbound_ip_prefix_ids","network_profile.0.load_balancer_profile.0.outbound_ip_address_ids"]},"outbound_ip_address_ids":{"type":["set","string"],"optional":true,"conflicts_with":["network_profile.0.load_balancer_profile.0.managed_outbound_ip_count","network_profile.0.load_balancer_profile.0.outbound_ip_prefix_ids"]},"outbound_ip_prefix_ids":{"type":["set","string"],"optional":true,"conflicts_with":["network_profile.0.load_balancer_profile.0.managed_outbound_ip_count","network_profile.0.load_balancer_profile.0.outbound_ip_address_ids"]},"outbound_ports_allocated":{"type":"number","optional":true,"default":0}}},"optional":true,"computed":true},"nat_gateway_profile":{"nesting_mode":3,"block":{"attributes":{"effective_outbound_ips":{"type":["set","string"],"computed":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"managed_outbound_ip_count":{"type":"number","optional":true,"computed":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"oms_agent":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"msi_auth_for_monitoring_enabled":{"type":"bool","optional":true},"oms_agent_identity":{"type":["list",["object",{"client_id":"string","object_id":"string","user_assigned_identity_id":"string"}]],"computed":true}}},"optional":true},"service_mesh_profile":{"nesting_mode":3,"block":{"attributes":{"external_ingress_gateway_enabled":{"type":"bool","optional":true},"internal_ingress_gateway_enabled":{"type":"bool","optional":true},"mode":{"type":"string","required":true},"revisions":{"type":["list","string"],"required":true}},"block_types":{"certificate_authority":{"nesting_mode":3,"block":{"attributes":{"cert_chain_object_name":{"type":"string","required":true},"cert_object_name":{"type":"string","required":true},"key_object_name":{"type":"string","required":true},"key_vault_id":{"type":"string","required":true},"root_cert_object_name":{"type":"string","required":true}}},"optional":true}}},"optional":true},"service_principal":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["identity","service_principal"]},"storage_profile":{"nesting_mode":3,"block":{"attributes":{"blob_driver_enabled":{"type":"bool","optional":true,"default":false},"disk_driver_enabled":{"type":"bool","optional":true,"default":true},"file_driver_enabled":{"type":"bool","optional":true,"default":true},"snapshot_controller_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true},"upgrade_override":{"nesting_mode":3,"block":{"attributes":{"effective_until":{"type":"string","optional":true},"force_upgrade_enabled":{"type":"bool","required":true}}},"optional":true},"web_app_routing":{"nesting_mode":3,"block":{"attributes":{"default_nginx_controller":{"type":"string","optional":true,"default":"AnnotationControlled"},"dns_zone_ids":{"type":["list","string"],"required":true},"web_app_routing_identity":{"type":["list",["object",{"client_id":"string","object_id":"string","user_assigned_identity_id":"string"}]],"computed":true}}},"optional":true},"windows_profile":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","required":true},"admin_username":{"type":"string","required":true},"license":{"type":"string","optional":true}},"block_types":{"gmsa":{"nesting_mode":3,"block":{"attributes":{"dns_server":{"type":"string","required":true},"root_domain":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"workload_autoscaler_profile":{"nesting_mode":3,"block":{"attributes":{"keda_enabled":{"type":"bool","optional":true,"default":false},"vertical_pod_autoscaler_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_kubernetes_cluster_extension":{"block":{"attributes":{"aks_assigned_identity":{"type":["list",["object",{"principal_id":"string","tenant_id":"string","type":"string"}]],"computed":true},"cluster_id":{"type":"string","required":true},"configuration_protected_settings":{"type":["map","string"],"optional":true},"configuration_settings":{"type":["map","string"],"optional":true},"current_version":{"type":"string","computed":true},"extension_type":{"type":"string","required":true},"name":{"type":"string","required":true},"release_namespace":{"type":"string","optional":true,"computed":true,"conflicts_with":["target_namespace"]},"release_train":{"type":"string","optional":true,"computed":true,"conflicts_with":["version"]},"target_namespace":{"type":"string","optional":true,"computed":true,"conflicts_with":["release_namespace"]},"version":{"type":"string","optional":true,"conflicts_with":["release_train"]}},"block_types":{"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"promotion_code":{"type":"string","optional":true},"publisher":{"type":"string","required":true},"version":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_kubernetes_cluster_node_pool":{"block":{"attributes":{"auto_scaling_enabled":{"type":"bool","optional":true},"capacity_reservation_group_id":{"type":"string","optional":true},"eviction_policy":{"type":"string","optional":true},"fips_enabled":{"type":"bool","optional":true},"gpu_driver":{"type":"string","optional":true},"gpu_instance":{"type":"string","optional":true},"host_encryption_enabled":{"type":"bool","optional":true},"host_group_id":{"type":"string","optional":true},"kubelet_disk_type":{"type":"string","optional":true,"computed":true},"kubernetes_cluster_id":{"type":"string","required":true},"max_count":{"type":"number","optional":true},"max_pods":{"type":"number","optional":true,"computed":true},"min_count":{"type":"number","optional":true},"mode":{"type":"string","optional":true,"default":"User"},"name":{"type":"string","required":true},"node_count":{"type":"number","optional":true,"computed":true},"node_labels":{"type":["map","string"],"optional":true,"computed":true},"node_public_ip_enabled":{"type":"bool","optional":true},"node_public_ip_prefix_id":{"type":"string","optional":true,"required_with":["node_public_ip_enabled"]},"node_taints":{"type":["list","string"],"optional":true},"orchestrator_version":{"type":"string","optional":true,"computed":true},"os_disk_size_gb":{"type":"number","optional":true,"computed":true},"os_disk_type":{"type":"string","optional":true,"default":"Managed"},"os_sku":{"type":"string","optional":true,"computed":true},"os_type":{"type":"string","optional":true,"default":"Linux"},"pod_subnet_id":{"type":"string","optional":true},"priority":{"type":"string","optional":true,"default":"Regular"},"proximity_placement_group_id":{"type":"string","optional":true},"scale_down_mode":{"type":"string","optional":true,"default":"Delete"},"snapshot_id":{"type":"string","optional":true},"spot_max_price":{"type":"number","optional":true,"default":-1},"tags":{"type":["map","string"],"optional":true},"temporary_name_for_rotation":{"type":"string","optional":true},"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false},"vm_size":{"type":"string","optional":true,"computed":true},"vnet_subnet_id":{"type":"string","optional":true},"workload_runtime":{"type":"string","optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"kubelet_config":{"nesting_mode":3,"block":{"attributes":{"allowed_unsafe_sysctls":{"type":["set","string"],"optional":true},"container_log_max_line":{"type":"number","optional":true},"container_log_max_size_mb":{"type":"number","optional":true},"cpu_cfs_quota_enabled":{"type":"bool","optional":true,"default":true},"cpu_cfs_quota_period":{"type":"string","optional":true},"cpu_manager_policy":{"type":"string","optional":true},"image_gc_high_threshold":{"type":"number","optional":true},"image_gc_low_threshold":{"type":"number","optional":true},"pod_max_pid":{"type":"number","optional":true},"topology_manager_policy":{"type":"string","optional":true}}},"optional":true},"linux_os_config":{"nesting_mode":3,"block":{"attributes":{"swap_file_size_mb":{"type":"number","optional":true},"transparent_huge_page":{"type":"string","optional":true,"computed":true,"conflicts_with":["linux_os_config.0.transparent_huge_page_enabled"]},"transparent_huge_page_defrag":{"type":"string","optional":true},"transparent_huge_page_enabled":{"type":"string","optional":true,"computed":true,"conflicts_with":["linux_os_config.0.transparent_huge_page"]}},"block_types":{"sysctl_config":{"nesting_mode":3,"block":{"attributes":{"fs_aio_max_nr":{"type":"number","optional":true},"fs_file_max":{"type":"number","optional":true},"fs_inotify_max_user_watches":{"type":"number","optional":true},"fs_nr_open":{"type":"number","optional":true},"kernel_threads_max":{"type":"number","optional":true},"net_core_netdev_max_backlog":{"type":"number","optional":true},"net_core_optmem_max":{"type":"number","optional":true},"net_core_rmem_default":{"type":"number","optional":true},"net_core_rmem_max":{"type":"number","optional":true},"net_core_somaxconn":{"type":"number","optional":true},"net_core_wmem_default":{"type":"number","optional":true},"net_core_wmem_max":{"type":"number","optional":true},"net_ipv4_ip_local_port_range_max":{"type":"number","optional":true},"net_ipv4_ip_local_port_range_min":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh1":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh2":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh3":{"type":"number","optional":true},"net_ipv4_tcp_fin_timeout":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_intvl":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_probes":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_time":{"type":"number","optional":true},"net_ipv4_tcp_max_syn_backlog":{"type":"number","optional":true},"net_ipv4_tcp_max_tw_buckets":{"type":"number","optional":true},"net_ipv4_tcp_tw_reuse":{"type":"bool","optional":true},"net_netfilter_nf_conntrack_buckets":{"type":"number","optional":true},"net_netfilter_nf_conntrack_max":{"type":"number","optional":true},"vm_max_map_count":{"type":"number","optional":true},"vm_swappiness":{"type":"number","optional":true},"vm_vfs_cache_pressure":{"type":"number","optional":true}}},"optional":true}}},"optional":true},"node_network_profile":{"nesting_mode":3,"block":{"attributes":{"application_security_group_ids":{"type":["list","string"],"optional":true},"node_public_ip_tags":{"type":["map","string"],"optional":true}},"block_types":{"allowed_host_ports":{"nesting_mode":3,"block":{"attributes":{"port_end":{"type":"number","optional":true},"port_start":{"type":"number","optional":true},"protocol":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"upgrade_settings":{"nesting_mode":3,"block":{"attributes":{"drain_timeout_in_minutes":{"type":"number","optional":true},"max_surge":{"type":"string","required":true},"node_soak_duration_in_minutes":{"type":"number","optional":true}}},"optional":true},"windows_profile":{"nesting_mode":3,"block":{"attributes":{"outbound_nat_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_kubernetes_cluster_trusted_access_role_binding":{"block":{"attributes":{"kubernetes_cluster_id":{"type":"string","required":true},"name":{"type":"string","required":true},"roles":{"type":["list","string"],"required":true},"source_resource_id":{"type":"string","required":true}}}},"azurerm_kubernetes_fleet_manager":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"hub_profile":{"nesting_mode":3,"block":{"attributes":{"dns_prefix":{"type":"string","required":true},"fqdn":{"type":"string","computed":true},"kubernetes_version":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_kubernetes_fleet_member":{"block":{"attributes":{"group":{"type":"string","optional":true},"kubernetes_cluster_id":{"type":"string","required":true},"kubernetes_fleet_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_kubernetes_fleet_update_run":{"block":{"attributes":{"fleet_update_strategy_id":{"type":"string","optional":true,"conflicts_with":["stage"]},"kubernetes_fleet_manager_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"managed_cluster_update":{"nesting_mode":3,"block":{"block_types":{"node_image_selection":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}}},"optional":true},"upgrade":{"nesting_mode":3,"block":{"attributes":{"kubernetes_version":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}},"required":true},"stage":{"nesting_mode":3,"block":{"attributes":{"after_stage_wait_in_seconds":{"type":"number","optional":true},"name":{"type":"string","required":true}},"block_types":{"group":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}}},"required":true}}},"optional":true,"conflicts_with":["fleet_update_strategy_id"]}}}},"azurerm_kubernetes_fleet_update_strategy":{"block":{"attributes":{"kubernetes_fleet_manager_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"stage":{"nesting_mode":3,"block":{"attributes":{"after_stage_wait_in_seconds":{"type":"number","optional":true},"name":{"type":"string","required":true}},"block_types":{"group":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_kubernetes_flux_configuration":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"continuous_reconciliation_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"namespace":{"type":"string","required":true},"scope":{"type":"string","optional":true,"default":"namespace"}},"block_types":{"blob_storage":{"nesting_mode":3,"block":{"attributes":{"account_key":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.managed_identity","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"container_id":{"type":"string","required":true},"local_auth_reference":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.managed_identity","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"sas_token":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.managed_identity","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600}},"block_types":{"managed_identity":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.managed_identity","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"service_principal":{"nesting_mode":3,"block":{"attributes":{"client_certificate_base64":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.service_principal.0.client_certificate_base64","blob_storage.0.service_principal.0.client_secret"]},"client_certificate_password":{"type":"string","optional":true,"required_with":["blob_storage.0.service_principal.0.client_certificate_base64"]},"client_certificate_send_chain":{"type":"bool","optional":true,"default":false},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.service_principal.0.client_certificate_base64","blob_storage.0.service_principal.0.client_secret"]},"tenant_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.managed_identity","blob_storage.0.sas_token","blob_storage.0.service_principal"]}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"bucket":{"nesting_mode":3,"block":{"attributes":{"access_key":{"type":"string","optional":true,"exactly_one_of":["bucket.0.access_key","bucket.0.local_auth_reference"],"required_with":["bucket.0.secret_key_base64"]},"bucket_name":{"type":"string","required":true},"local_auth_reference":{"type":"string","optional":true,"exactly_one_of":["bucket.0.access_key","bucket.0.local_auth_reference"]},"secret_key_base64":{"type":"string","optional":true,"required_with":["bucket.0.access_key"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600},"tls_enabled":{"type":"bool","optional":true,"default":true},"url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"git_repository":{"nesting_mode":3,"block":{"attributes":{"https_ca_cert_base64":{"type":"string","optional":true,"required_with":["git_repository.0.https_user"]},"https_key_base64":{"type":"string","optional":true,"required_with":["git_repository.0.https_user"]},"https_user":{"type":"string","optional":true,"conflicts_with":["git_repository.0.local_auth_reference","git_repository.0.ssh_private_key_base64","git_repository.0.ssh_known_hosts_base64"],"required_with":["git_repository.0.https_key_base64"]},"local_auth_reference":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.ssh_private_key_base64","git_repository.0.ssh_known_hosts_base64"]},"provider":{"type":"string","optional":true},"reference_type":{"type":"string","required":true},"reference_value":{"type":"string","required":true},"ssh_known_hosts_base64":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.local_auth_reference"]},"ssh_private_key_base64":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.local_auth_reference"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600},"url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"kustomizations":{"nesting_mode":4,"block":{"attributes":{"depends_on":{"type":["list","string"],"optional":true},"garbage_collection_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"path":{"type":"string","optional":true},"recreating_enabled":{"type":"bool","optional":true,"default":false},"retry_interval_in_seconds":{"type":"number","optional":true,"default":600},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600},"wait":{"type":"bool","optional":true,"default":true}},"block_types":{"post_build":{"nesting_mode":3,"block":{"attributes":{"substitute":{"type":["map","string"],"optional":true}},"block_types":{"substitute_from":{"nesting_mode":3,"block":{"attributes":{"kind":{"type":"string","required":true},"name":{"type":"string","required":true},"optional":{"type":"bool","optional":true,"default":false}}},"optional":true}}},"optional":true}}},"required":true}}}},"azurerm_kusto_attached_database_configuration":{"block":{"attributes":{"attached_database_names":{"type":["list","string"],"computed":true},"cluster_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["cluster_id","cluster_resource_id"]},"cluster_name":{"type":"string","required":true},"cluster_resource_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["cluster_id","cluster_resource_id"]},"database_name":{"type":"string","required":true},"default_principal_modification_kind":{"type":"string","optional":true,"default":"None"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"sharing":{"nesting_mode":3,"block":{"attributes":{"external_tables_to_exclude":{"type":["set","string"],"optional":true},"external_tables_to_include":{"type":["set","string"],"optional":true},"materialized_views_to_exclude":{"type":["set","string"],"optional":true},"materialized_views_to_include":{"type":["set","string"],"optional":true},"tables_to_exclude":{"type":["set","string"],"optional":true},"tables_to_include":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_kusto_cluster":{"block":{"attributes":{"allowed_fqdns":{"type":["list","string"],"optional":true},"allowed_ip_ranges":{"type":["list","string"],"optional":true},"auto_stop_enabled":{"type":"bool","optional":true,"default":true},"data_ingestion_uri":{"type":"string","computed":true},"disk_encryption_enabled":{"type":"bool","optional":true,"default":false},"double_encryption_enabled":{"type":"bool","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_network_access_restricted":{"type":"bool","optional":true,"default":false},"public_ip_type":{"type":"string","optional":true,"default":"IPv4"},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"purge_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"streaming_ingestion_enabled":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true},"trusted_external_tenants":{"type":["list","string"],"optional":true,"computed":true},"uri":{"type":"string","computed":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"language_extensions":{"nesting_mode":3,"block":{"attributes":{"image":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true},"optimized_auto_scale":{"nesting_mode":3,"block":{"attributes":{"maximum_instances":{"type":"number","required":true},"minimum_instances":{"type":"number","required":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true}}},"required":true},"virtual_network_configuration":{"nesting_mode":3,"block":{"attributes":{"data_management_public_ip_id":{"type":"string","required":true},"engine_public_ip_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_kusto_cluster_customer_managed_key":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"key_name":{"type":"string","optional":true,"required_with":["key_vault_id"]},"key_vault_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_id"]},"key_version":{"type":"string","optional":true},"managed_hsm_key_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_id"]},"user_identity":{"type":"string","optional":true}}}},"azurerm_kusto_cluster_managed_private_endpoint":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"private_link_resource_id":{"type":"string","required":true},"private_link_resource_region":{"type":"string","optional":true},"request_message":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_kusto_cluster_principal_assignment":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"name":{"type":"string","required":true},"principal_id":{"type":"string","required":true},"principal_name":{"type":"string","computed":true},"principal_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"role":{"type":"string","required":true},"tenant_id":{"type":"string","required":true},"tenant_name":{"type":"string","computed":true}}}},"azurerm_kusto_cosmosdb_data_connection":{"block":{"attributes":{"cosmosdb_container_id":{"type":"string","required":true},"kusto_database_id":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_identity_id":{"type":"string","required":true},"mapping_rule_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"retrieval_start_date":{"type":"string","optional":true},"table_name":{"type":"string","required":true}}}},"azurerm_kusto_database":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"hot_cache_period":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"size":{"type":"number","computed":true},"soft_delete_period":{"type":"string","optional":true}}}},"azurerm_kusto_database_principal_assignment":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"database_name":{"type":"string","required":true},"name":{"type":"string","required":true},"principal_id":{"type":"string","required":true},"principal_name":{"type":"string","computed":true},"principal_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"role":{"type":"string","required":true},"tenant_id":{"type":"string","required":true},"tenant_name":{"type":"string","computed":true}}}},"azurerm_kusto_eventgrid_data_connection":{"block":{"attributes":{"blob_storage_event_type":{"type":"string","optional":true,"default":"Microsoft.Storage.BlobCreated"},"cluster_name":{"type":"string","required":true},"data_format":{"type":"string","optional":true},"database_name":{"type":"string","required":true},"database_routing_type":{"type":"string","optional":true,"default":"Single"},"eventgrid_event_subscription_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["eventgrid_resource_id"]},"eventgrid_resource_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["eventgrid_event_subscription_id"]},"eventhub_consumer_group_name":{"type":"string","required":true},"eventhub_id":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_identity_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["managed_identity_resource_id"]},"managed_identity_resource_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["managed_identity_id"]},"mapping_rule_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"skip_first_record":{"type":"bool","optional":true,"default":false},"storage_account_id":{"type":"string","required":true},"table_name":{"type":"string","optional":true}}}},"azurerm_kusto_eventhub_data_connection":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"compression":{"type":"string","optional":true,"default":"None"},"consumer_group":{"type":"string","required":true},"data_format":{"type":"string","optional":true},"database_name":{"type":"string","required":true},"database_routing_type":{"type":"string","optional":true,"default":"Single"},"event_system_properties":{"type":["list","string"],"optional":true,"computed":true},"eventhub_id":{"type":"string","required":true},"identity_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"mapping_rule_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"table_name":{"type":"string","optional":true}}}},"azurerm_kusto_iothub_data_connection":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"consumer_group":{"type":"string","required":true},"data_format":{"type":"string","optional":true},"database_name":{"type":"string","required":true},"database_routing_type":{"type":"string","optional":true,"default":"Single"},"event_system_properties":{"type":["set","string"],"optional":true},"iothub_id":{"type":"string","required":true},"location":{"type":"string","required":true},"mapping_rule_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"shared_access_policy_name":{"type":"string","required":true},"table_name":{"type":"string","optional":true}}}},"azurerm_kusto_script":{"block":{"attributes":{"continue_on_errors_enabled":{"type":"bool","optional":true,"default":false},"database_id":{"type":"string","required":true},"force_an_update_when_value_changed":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"sas_token":{"type":"string","optional":true,"required_with":["url"]},"script_content":{"type":"string","optional":true,"exactly_one_of":["url","script_content"]},"url":{"type":"string","optional":true,"exactly_one_of":["url","script_content"],"required_with":["sas_token"]}}}},"azurerm_lb":{"block":{"attributes":{"edge_zone":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_ip_address":{"type":"string","computed":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_address_id":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Standard"},"sku_tier":{"type":"string","optional":true,"default":"Regional"},"subnet_id":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"frontend_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"gateway_load_balancer_frontend_ip_configuration_id":{"type":"string","optional":true,"computed":true},"id":{"type":"string","computed":true},"inbound_nat_rules":{"type":["set","string"],"computed":true},"load_balancer_rules":{"type":["set","string"],"computed":true},"name":{"type":"string","required":true},"outbound_rules":{"type":["set","string"],"computed":true},"private_ip_address":{"type":"string","optional":true,"computed":true},"private_ip_address_allocation":{"type":"string","optional":true,"computed":true},"private_ip_address_version":{"type":"string","optional":true,"computed":true},"public_ip_address_id":{"type":"string","optional":true},"public_ip_prefix_id":{"type":"string","optional":true,"computed":true},"subnet_id":{"type":"string","optional":true},"zones":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_lb_backend_address_pool":{"block":{"attributes":{"backend_ip_configurations":{"type":["list","string"],"computed":true},"inbound_nat_rules":{"type":["list","string"],"computed":true},"load_balancing_rules":{"type":["list","string"],"computed":true},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_rules":{"type":["list","string"],"computed":true},"synchronous_mode":{"type":"string","optional":true,"required_with":["virtual_network_id"]},"virtual_network_id":{"type":"string","optional":true}},"block_types":{"tunnel_interface":{"nesting_mode":3,"block":{"attributes":{"identifier":{"type":"number","required":true},"port":{"type":"number","required":true},"protocol":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_lb_backend_address_pool_address":{"block":{"attributes":{"backend_address_ip_configuration_id":{"type":"string","optional":true,"conflicts_with":["virtual_network_id"]},"backend_address_pool_id":{"type":"string","required":true},"inbound_nat_rule_port_mapping":{"type":["list",["object",{"backend_port":"number","frontend_port":"number","inbound_nat_rule_name":"string"}]],"computed":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true,"conflicts_with":["backend_address_ip_configuration_id"]}}}},"azurerm_lb_nat_pool":{"block":{"attributes":{"backend_port":{"type":"number","required":true},"floating_ip_enabled":{"type":"bool","optional":true},"frontend_ip_configuration_id":{"type":"string","computed":true},"frontend_ip_configuration_name":{"type":"string","required":true},"frontend_port_end":{"type":"number","required":true},"frontend_port_start":{"type":"number","required":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tcp_reset_enabled":{"type":"bool","optional":true}}}},"azurerm_lb_nat_rule":{"block":{"attributes":{"backend_address_pool_id":{"type":"string","optional":true,"conflicts_with":["frontend_port"],"required_with":["frontend_port_start","frontend_port_end"]},"backend_ip_configuration_id":{"type":"string","computed":true},"backend_port":{"type":"number","required":true},"enable_floating_ip":{"type":"bool","optional":true,"computed":true,"conflicts_with":["floating_ip_enabled"]},"enable_tcp_reset":{"type":"bool","optional":true,"computed":true,"conflicts_with":["tcp_reset_enabled"]},"floating_ip_enabled":{"type":"bool","optional":true,"computed":true},"frontend_ip_configuration_id":{"type":"string","computed":true},"frontend_ip_configuration_name":{"type":"string","required":true},"frontend_port":{"type":"number","optional":true,"conflicts_with":["frontend_port_start","frontend_port_end","backend_address_pool_id"]},"frontend_port_end":{"type":"number","optional":true,"conflicts_with":["frontend_port"],"required_with":["backend_address_pool_id","frontend_port_start"]},"frontend_port_start":{"type":"number","optional":true,"conflicts_with":["frontend_port"],"required_with":["backend_address_pool_id","frontend_port_end"]},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tcp_reset_enabled":{"type":"bool","optional":true,"computed":true}}}},"azurerm_lb_outbound_rule":{"block":{"attributes":{"allocated_outbound_ports":{"type":"number","optional":true,"default":1024},"backend_address_pool_id":{"type":"string","required":true},"enable_tcp_reset":{"type":"bool","optional":true,"computed":true,"conflicts_with":["tcp_reset_enabled"]},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"tcp_reset_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["enable_tcp_reset"]}},"block_types":{"frontend_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_lb_probe":{"block":{"attributes":{"interval_in_seconds":{"type":"number","optional":true,"default":15},"load_balancer_rules":{"type":["set","string"],"computed":true},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"number_of_probes":{"type":"number","optional":true,"default":2},"port":{"type":"number","required":true},"probe_threshold":{"type":"number","optional":true,"default":1},"protocol":{"type":"string","optional":true,"default":"Tcp"},"request_path":{"type":"string","optional":true}}}},"azurerm_lb_rule":{"block":{"attributes":{"backend_address_pool_ids":{"type":["list","string"],"optional":true},"backend_port":{"type":"number","required":true},"disable_outbound_snat":{"type":"bool","optional":true,"default":false},"enable_floating_ip":{"type":"bool","optional":true,"computed":true,"conflicts_with":["floating_ip_enabled"]},"enable_tcp_reset":{"type":"bool","optional":true,"computed":true,"conflicts_with":["tcp_reset_enabled"]},"floating_ip_enabled":{"type":"bool","optional":true,"computed":true},"frontend_ip_configuration_id":{"type":"string","computed":true},"frontend_ip_configuration_name":{"type":"string","required":true},"frontend_port":{"type":"number","required":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"load_distribution":{"type":"string","optional":true,"default":"Default"},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"probe_id":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"tcp_reset_enabled":{"type":"bool","optional":true,"computed":true}}}},"azurerm_lighthouse_assignment":{"block":{"attributes":{"lighthouse_definition_id":{"type":"string","required":true},"name":{"type":"string","optional":true,"computed":true},"scope":{"type":"string","required":true}}}},"azurerm_lighthouse_definition":{"block":{"attributes":{"description":{"type":"string","optional":true},"lighthouse_definition_id":{"type":"string","optional":true,"computed":true},"managing_tenant_id":{"type":"string","required":true},"name":{"type":"string","required":true},"scope":{"type":"string","required":true}},"block_types":{"authorization":{"nesting_mode":4,"block":{"attributes":{"delegated_role_definition_ids":{"type":["set","string"],"optional":true},"principal_display_name":{"type":"string","optional":true},"principal_id":{"type":"string","required":true},"role_definition_id":{"type":"string","required":true}}},"required":true},"eligible_authorization":{"nesting_mode":4,"block":{"attributes":{"principal_display_name":{"type":"string","optional":true},"principal_id":{"type":"string","required":true},"role_definition_id":{"type":"string","required":true}},"block_types":{"just_in_time_access_policy":{"nesting_mode":3,"block":{"attributes":{"maximum_activation_duration":{"type":"string","optional":true,"default":"PT8H"},"multi_factor_auth_provider":{"type":"string","optional":true}},"block_types":{"approver":{"nesting_mode":4,"block":{"attributes":{"principal_display_name":{"type":"string","optional":true},"principal_id":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true}}}},"azurerm_linux_function_app":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"builtin_logging_enabled":{"type":"bool","optional":true,"default":true},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Optional"},"content_share_force_disabled":{"type":"bool","optional":true,"default":false},"custom_domain_verification_id":{"type":"string","computed":true},"daily_memory_time_quota":{"type":"number","optional":true,"default":0},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"functions_extension_version":{"type":"string","optional":true,"default":"~4"},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_plan_id":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","optional":true,"conflicts_with":["storage_uses_managed_identity","storage_key_vault_secret_id"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_key_vault_secret_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_uses_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["storage_account_access_key","storage_key_vault_secret_id"]},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"computed":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"app_scale_limit":{"type":"number","optional":true,"computed":true},"application_insights_connection_string":{"type":"string","optional":true},"application_insights_key":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"linux_fx_version":{"type":"string","computed":true},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":false},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"app_service_logs":{"nesting_mode":3,"block":{"attributes":{"disk_quota_mb":{"type":"number","optional":true,"default":35},"retention_period_days":{"type":"number","optional":true}}},"optional":true},"application_stack":{"nesting_mode":3,"block":{"attributes":{"dotnet_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"powershell_core_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"python_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"use_custom_runtime":{"type":"bool","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"use_dotnet_isolated_runtime":{"type":"bool","optional":true,"default":false,"conflicts_with":["site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]}},"block_types":{"docker":{"nesting_mode":3,"block":{"attributes":{"image_name":{"type":"string","required":true},"image_tag":{"type":"string","required":true},"registry_password":{"type":"string","optional":true},"registry_url":{"type":"string","required":true},"registry_username":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"sticky_settings":{"nesting_mode":3,"block":{"attributes":{"app_setting_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]},"connection_string_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]}}},"optional":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_linux_function_app_slot":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"builtin_logging_enabled":{"type":"bool","optional":true,"default":true},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Optional"},"content_share_force_disabled":{"type":"bool","optional":true,"default":false},"custom_domain_verification_id":{"type":"string","computed":true},"daily_memory_time_quota":{"type":"number","optional":true,"default":0},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"function_app_id":{"type":"string","required":true},"functions_extension_version":{"type":"string","optional":true,"default":"~4"},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"service_plan_id":{"type":"string","optional":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","optional":true,"conflicts_with":["storage_uses_managed_identity","storage_key_vault_secret_id"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_key_vault_secret_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_uses_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["storage_account_access_key","storage_key_vault_secret_id"]},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"computed":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"app_scale_limit":{"type":"number","optional":true,"computed":true},"application_insights_connection_string":{"type":"string","optional":true},"application_insights_key":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"default":0},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"linux_fx_version":{"type":"string","computed":true},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":false},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"app_service_logs":{"nesting_mode":3,"block":{"attributes":{"disk_quota_mb":{"type":"number","optional":true,"default":35},"retention_period_days":{"type":"number","optional":true}}},"optional":true},"application_stack":{"nesting_mode":3,"block":{"attributes":{"dotnet_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"powershell_core_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"python_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"use_custom_runtime":{"type":"bool","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"use_dotnet_isolated_runtime":{"type":"bool","optional":true,"default":false,"conflicts_with":["site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]}},"block_types":{"docker":{"nesting_mode":3,"block":{"attributes":{"image_name":{"type":"string","required":true},"image_tag":{"type":"string","required":true},"registry_password":{"type":"string","optional":true},"registry_url":{"type":"string","required":true},"registry_username":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_linux_virtual_machine":{"block":{"attributes":{"admin_password":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"]},"admin_username":{"type":"string","optional":true,"exactly_one_of":["admin_username","os_managed_disk_id"]},"allow_extension_operations":{"type":"bool","optional":true,"computed":true},"availability_set_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id","virtual_machine_scale_set_id","zone"]},"bypass_platform_safety_checks_on_user_schedule_enabled":{"type":"bool","optional":true,"default":false,"conflicts_with":["os_managed_disk_id"]},"capacity_reservation_group_id":{"type":"string","optional":true,"conflicts_with":["availability_set_id","proximity_placement_group_id"]},"computer_name":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"custom_data":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"]},"dedicated_host_group_id":{"type":"string","optional":true,"conflicts_with":["dedicated_host_id"]},"dedicated_host_id":{"type":"string","optional":true,"conflicts_with":["dedicated_host_group_id"]},"disable_password_authentication":{"type":"bool","optional":true,"computed":true},"disk_controller_type":{"type":"string","optional":true,"computed":true},"edge_zone":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"eviction_policy":{"type":"string","optional":true},"extensions_time_budget":{"type":"string","optional":true,"default":"PT1H30M"},"license_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"max_bid_price":{"type":"number","optional":true,"default":-1},"name":{"type":"string","required":true},"network_interface_ids":{"type":["list","string"],"required":true},"os_managed_disk_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"patch_assessment_mode":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"patch_mode":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"platform_fault_domain":{"type":"number","optional":true,"default":-1,"required_with":["virtual_machine_scale_set_id"]},"priority":{"type":"string","optional":true,"default":"Regular"},"private_ip_address":{"type":"string","computed":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"provision_vm_agent":{"type":"bool","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"proximity_placement_group_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id"]},"public_ip_address":{"type":"string","computed":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"reboot_setting":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"]},"resource_group_name":{"type":"string","required":true},"secure_boot_enabled":{"type":"bool","optional":true},"size":{"type":"string","required":true},"source_image_id":{"type":"string","optional":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"tags":{"type":["map","string"],"optional":true},"user_data":{"type":"string","optional":true},"virtual_machine_id":{"type":"string","computed":true},"virtual_machine_scale_set_id":{"type":"string","optional":true,"conflicts_with":["availability_set_id"]},"vm_agent_platform_updates_enabled":{"type":"bool","optional":true,"computed":true},"vtpm_enabled":{"type":"bool","optional":true},"zone":{"type":"string","optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"hibernation_enabled":{"type":"bool","optional":true,"default":false},"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"admin_ssh_key":{"nesting_mode":4,"block":{"attributes":{"public_key":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"storage_account_uri":{"type":"string","optional":true}}},"optional":true},"gallery_application":{"nesting_mode":3,"block":{"attributes":{"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":false},"configuration_blob_uri":{"type":"string","optional":true},"order":{"type":"number","optional":true,"default":0},"tag":{"type":"string","optional":true},"treat_failure_as_deployment_failure_enabled":{"type":"bool","optional":true,"default":false},"version_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.secure_vm_disk_encryption_set_id"]},"disk_size_gb":{"type":"number","optional":true,"computed":true},"id":{"type":"string","computed":true},"name":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"secure_vm_disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.disk_encryption_set_id"]},"security_encryption_type":{"type":"string","optional":true},"storage_account_type":{"type":"string","optional":true,"computed":true,"exactly_one_of":["os_managed_disk_id","os_disk.0.storage_account_type"]},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"diff_disk_settings":{"nesting_mode":3,"block":{"attributes":{"option":{"type":"string","required":true},"placement":{"type":"string","optional":true,"default":"CacheDisk"}}},"optional":true,"conflicts_with":["os_managed_disk_id"]}}},"required":true},"os_image_notification":{"nesting_mode":3,"block":{"attributes":{"timeout":{"type":"string","optional":true,"default":"PT15M"}}},"optional":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"url":{"type":"string","required":true}}},"required":true}}},"optional":true},"source_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"termination_notification":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"timeout":{"type":"string","optional":true,"default":"PT5M"}}},"optional":true,"computed":true}}}},"azurerm_linux_virtual_machine_scale_set":{"block":{"attributes":{"admin_password":{"type":"string","optional":true},"admin_username":{"type":"string","required":true},"capacity_reservation_group_id":{"type":"string","optional":true,"conflicts_with":["proximity_placement_group_id"]},"computer_name_prefix":{"type":"string","optional":true,"computed":true},"custom_data":{"type":"string","optional":true},"disable_password_authentication":{"type":"bool","optional":true,"default":true},"do_not_run_extensions_on_overprovisioned_machines":{"type":"bool","optional":true,"default":false},"edge_zone":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"eviction_policy":{"type":"string","optional":true},"extension_operations_enabled":{"type":"bool","optional":true,"default":true},"extensions_time_budget":{"type":"string","optional":true,"default":"PT1H30M"},"health_probe_id":{"type":"string","optional":true},"host_group_id":{"type":"string","optional":true},"instances":{"type":"number","optional":true,"default":0},"location":{"type":"string","required":true},"max_bid_price":{"type":"number","optional":true,"default":-1},"name":{"type":"string","required":true},"overprovision":{"type":"bool","optional":true,"default":true},"platform_fault_domain_count":{"type":"number","optional":true,"computed":true},"priority":{"type":"string","optional":true,"default":"Regular"},"provision_vm_agent":{"type":"bool","optional":true,"default":true},"proximity_placement_group_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id"]},"resource_group_name":{"type":"string","required":true},"secure_boot_enabled":{"type":"bool","optional":true},"single_placement_group":{"type":"bool","optional":true,"default":true},"sku":{"type":"string","required":true},"source_image_id":{"type":"string","optional":true,"exactly_one_of":["source_image_id","source_image_reference"]},"tags":{"type":["map","string"],"optional":true},"unique_id":{"type":"string","computed":true},"upgrade_mode":{"type":"string","optional":true,"default":"Manual"},"user_data":{"type":"string","optional":true},"vtpm_enabled":{"type":"bool","optional":true},"zone_balance":{"type":"bool","optional":true,"default":false},"zones":{"type":["set","string"],"optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"admin_ssh_key":{"nesting_mode":4,"block":{"attributes":{"public_key":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"automatic_instance_repair":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"grace_period":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"automatic_os_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"disable_automatic_rollback":{"type":"bool","required":true},"enable_automatic_os_upgrade":{"type":"bool","required":true}}},"optional":true},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"storage_account_uri":{"type":"string","optional":true}}},"optional":true},"data_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"create_option":{"type":"string","optional":true,"default":"Empty"},"disk_encryption_set_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","required":true},"lun":{"type":"number","required":true},"name":{"type":"string","optional":true},"storage_account_type":{"type":"string","required":true},"ultra_ssd_disk_iops_read_write":{"type":"number","optional":true,"computed":true},"ultra_ssd_disk_mbps_read_write":{"type":"number","optional":true,"computed":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"extension":{"nesting_mode":4,"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true,"default":true},"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":false},"force_update_tag":{"type":"string","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"provision_after_extensions":{"type":["list","string"],"optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true}},"block_types":{"protected_settings_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"gallery_application":{"nesting_mode":3,"block":{"attributes":{"configuration_blob_uri":{"type":"string","optional":true},"order":{"type":"number","optional":true,"default":0},"tag":{"type":"string","optional":true},"version_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"auxiliary_mode":{"type":"string","optional":true},"auxiliary_sku":{"type":"string","optional":true},"dns_servers":{"type":["list","string"],"optional":true},"enable_accelerated_networking":{"type":"bool","optional":true,"default":false},"enable_ip_forwarding":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"network_security_group_id":{"type":"string","optional":true},"primary":{"type":"bool","optional":true,"default":false}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"application_gateway_backend_address_pool_ids":{"type":["set","string"],"optional":true},"application_security_group_ids":{"type":["set","string"],"optional":true},"load_balancer_backend_address_pool_ids":{"type":["set","string"],"optional":true},"load_balancer_inbound_nat_rules_ids":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"public_ip_address":{"nesting_mode":3,"block":{"attributes":{"domain_name_label":{"type":"string","optional":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"public_ip_prefix_id":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"ip_tag":{"nesting_mode":3,"block":{"attributes":{"tag":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"required":true}}},"required":true},"os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.secure_vm_disk_encryption_set_id"]},"disk_size_gb":{"type":"number","optional":true,"computed":true},"secure_vm_disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.disk_encryption_set_id"]},"security_encryption_type":{"type":"string","optional":true},"storage_account_type":{"type":"string","required":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"diff_disk_settings":{"nesting_mode":3,"block":{"attributes":{"option":{"type":"string","required":true},"placement":{"type":"string","optional":true,"default":"CacheDisk"}}},"optional":true}}},"required":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"rolling_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"cross_zone_upgrades_enabled":{"type":"bool","optional":true},"max_batch_instance_percent":{"type":"number","required":true},"max_unhealthy_instance_percent":{"type":"number","required":true},"max_unhealthy_upgraded_instance_percent":{"type":"number","required":true},"maximum_surge_instances_enabled":{"type":"bool","optional":true},"pause_time_between_batches":{"type":"string","required":true},"prioritize_unhealthy_instances_enabled":{"type":"bool","optional":true}}},"optional":true},"scale_in":{"nesting_mode":3,"block":{"attributes":{"force_deletion_enabled":{"type":"bool","optional":true,"default":false},"rule":{"type":"string","optional":true,"default":"Default"}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"url":{"type":"string","required":true}}},"required":true}}},"optional":true},"source_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["source_image_id","source_image_reference"]},"spot_restore":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":false},"timeout":{"type":"string","optional":true,"default":"PT1H"}}},"optional":true,"computed":true},"termination_notification":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"timeout":{"type":"string","optional":true,"default":"PT5M"}}},"optional":true,"computed":true}}}},"azurerm_linux_web_app":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"client_affinity_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Required"},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_plan_id":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages":{"type":"bool","optional":true,"default":false},"failed_request_tracing":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","required":true}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","optional":true,"default":0},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"]}}},"optional":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"linux_fx_version":{"type":"string","computed":true},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"local_mysql_enabled":{"type":"bool","optional":true,"default":false},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"application_stack":{"nesting_mode":3,"block":{"attributes":{"docker_image_name":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"docker_registry_password":{"type":"string","optional":true},"docker_registry_url":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.docker_image_name"]},"docker_registry_username":{"type":"string","optional":true},"dotnet_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"go_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"java_server":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.java_server_version"]},"java_server_version":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.java_server"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"],"required_with":["site_config.0.application_stack.0.java_server_version","site_config.0.application_stack.0.java_server"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"php_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"python_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"ruby_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]}}},"optional":true,"computed":true},"auto_heal_setting":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true},"minimum_process_execution_time":{"type":"string","optional":true,"computed":true}}},"optional":true},"trigger":{"nesting_mode":3,"block":{"block_types":{"requests":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true}}},"optional":true},"slow_request":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"time_taken":{"type":"string","required":true}}},"optional":true},"slow_request_with_path":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"time_taken":{"type":"string","required":true}}},"optional":true},"status_code":{"nesting_mode":4,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"status_code_range":{"type":"string","required":true},"sub_status":{"type":"number","optional":true},"win32_status_code":{"type":"number","optional":true}}},"optional":true}}},"optional":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"sticky_settings":{"nesting_mode":3,"block":{"attributes":{"app_setting_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]},"connection_string_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]}}},"optional":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_linux_web_app_slot":{"block":{"attributes":{"app_metadata":{"type":["map","string"],"computed":true},"app_service_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true},"client_affinity_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Required"},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"service_plan_id":{"type":"string","optional":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages":{"type":"bool","optional":true,"default":false},"failed_request_tracing":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","required":true}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","optional":true,"default":0},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"]}}},"optional":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"linux_fx_version":{"type":"string","computed":true},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"local_mysql_enabled":{"type":"bool","optional":true,"default":false},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"application_stack":{"nesting_mode":3,"block":{"attributes":{"docker_image_name":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"docker_registry_password":{"type":"string","optional":true},"docker_registry_url":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.docker_image_name"]},"docker_registry_username":{"type":"string","optional":true},"dotnet_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"go_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"java_server":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.java_server_version"]},"java_server_version":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.java_server"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"],"required_with":["site_config.0.application_stack.0.java_server_version","site_config.0.application_stack.0.java_server"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"php_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"python_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"ruby_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]}}},"optional":true,"computed":true},"auto_heal_setting":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true},"minimum_process_execution_time":{"type":"string","optional":true,"computed":true}}},"optional":true},"trigger":{"nesting_mode":3,"block":{"block_types":{"requests":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true}}},"optional":true},"slow_request":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"time_taken":{"type":"string","required":true}}},"optional":true},"slow_request_with_path":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"time_taken":{"type":"string","required":true}}},"optional":true},"status_code":{"nesting_mode":4,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"status_code_range":{"type":"string","required":true},"sub_status":{"type":"number","optional":true},"win32_status_code":{"type":"number","optional":true}}},"optional":true}}},"optional":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_load_test":{"block":{"attributes":{"data_plane_uri":{"type":"string","computed":true},"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"key_url":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_id":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_local_network_gateway":{"block":{"attributes":{"address_space":{"type":["list","string"],"optional":true},"gateway_address":{"type":"string","optional":true,"exactly_one_of":["gateway_address","gateway_fqdn"]},"gateway_fqdn":{"type":"string","optional":true,"exactly_one_of":["gateway_address","gateway_fqdn"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"bgp_settings":{"nesting_mode":3,"block":{"attributes":{"asn":{"type":"number","required":true},"bgp_peering_address":{"type":"string","required":true},"peer_weight":{"type":"number","optional":true}}},"optional":true}}}},"azurerm_log_analytics_cluster":{"block":{"attributes":{"cluster_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"size_gb":{"type":"number","optional":true,"default":100},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_log_analytics_cluster_customer_managed_key":{"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"log_analytics_cluster_id":{"type":"string","required":true}}}},"azurerm_log_analytics_data_export_rule":{"block":{"attributes":{"destination_resource_id":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":false},"export_rule_id":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"table_names":{"type":["set","string"],"required":true},"workspace_resource_id":{"type":"string","required":true}}}},"azurerm_log_analytics_datasource_windows_event":{"block":{"attributes":{"event_log_name":{"type":"string","required":true},"event_types":{"type":["set","string"],"required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"workspace_name":{"type":"string","required":true}}}},"azurerm_log_analytics_datasource_windows_performance_counter":{"block":{"attributes":{"counter_name":{"type":"string","required":true},"instance_name":{"type":"string","required":true},"interval_seconds":{"type":"number","required":true},"name":{"type":"string","required":true},"object_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"workspace_name":{"type":"string","required":true}}}},"azurerm_log_analytics_linked_service":{"block":{"attributes":{"name":{"type":"string","computed":true},"read_access_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["read_access_id","write_access_id"]},"resource_group_name":{"type":"string","required":true},"workspace_id":{"type":"string","required":true},"write_access_id":{"type":"string","optional":true,"exactly_one_of":["read_access_id","write_access_id"]}}}},"azurerm_log_analytics_linked_storage_account":{"block":{"attributes":{"data_source_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_ids":{"type":["set","string"],"required":true},"workspace_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["workspace_id","workspace_resource_id"]},"workspace_resource_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["workspace_id","workspace_resource_id"]}}}},"azurerm_log_analytics_query_pack":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_log_analytics_query_pack_query":{"block":{"attributes":{"additional_settings_json":{"type":"string","optional":true},"body":{"type":"string","required":true},"categories":{"type":["list","string"],"optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"name":{"type":"string","optional":true,"computed":true},"query_pack_id":{"type":"string","required":true},"resource_types":{"type":["list","string"],"optional":true},"solutions":{"type":["list","string"],"optional":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_log_analytics_saved_search":{"block":{"attributes":{"category":{"type":"string","required":true},"display_name":{"type":"string","required":true},"function_alias":{"type":"string","optional":true},"function_parameters":{"type":["list","string"],"optional":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"query":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_log_analytics_solution":{"block":{"attributes":{"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"solution_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_name":{"type":"string","required":true},"workspace_resource_id":{"type":"string","required":true}},"block_types":{"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","computed":true},"product":{"type":"string","required":true},"promotion_code":{"type":"string","optional":true},"publisher":{"type":"string","required":true}}},"required":true}}}},"azurerm_log_analytics_storage_insights":{"block":{"attributes":{"blob_container_names":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"storage_account_key":{"type":"string","required":true},"table_names":{"type":["set","string"],"optional":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_log_analytics_workspace":{"block":{"attributes":{"allow_resource_only_permissions":{"type":"bool","optional":true,"default":true},"cmk_for_query_forced":{"type":"bool","optional":true},"daily_quota_gb":{"type":"number","optional":true,"default":-1},"data_collection_rule_id":{"type":"string","optional":true},"immediate_data_purge_on_30_days_enabled":{"type":"bool","optional":true},"internet_ingestion_enabled":{"type":"bool","optional":true,"default":true},"internet_query_enabled":{"type":"bool","optional":true,"default":true},"local_authentication_disabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["local_authentication_enabled"]},"local_authentication_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["local_authentication_disabled"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_shared_key":{"type":"string","computed":true},"reservation_capacity_in_gb_per_day":{"type":"number","optional":true},"resource_group_name":{"type":"string","required":true},"retention_in_days":{"type":"number","optional":true,"computed":true},"secondary_shared_key":{"type":"string","computed":true},"sku":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","computed":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_log_analytics_workspace_table":{"block":{"attributes":{"name":{"type":"string","required":true},"plan":{"type":"string","optional":true,"default":"Analytics"},"retention_in_days":{"type":"number","optional":true},"total_retention_in_days":{"type":"number","optional":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_logic_app_action_custom":{"block":{"attributes":{"body":{"type":"string","required":true},"logic_app_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_logic_app_action_http":{"block":{"attributes":{"body":{"type":"string","optional":true},"headers":{"type":["map","string"],"optional":true},"logic_app_id":{"type":"string","required":true},"method":{"type":"string","required":true},"name":{"type":"string","required":true},"queries":{"type":["map","string"],"optional":true},"uri":{"type":"string","required":true}},"block_types":{"run_after":{"nesting_mode":4,"block":{"attributes":{"action_name":{"type":"string","required":true},"action_result":{"type":"string","required":true}}},"optional":true}}}},"azurerm_logic_app_integration_account":{"block":{"attributes":{"integration_service_environment_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_logic_app_integration_account_agreement":{"block":{"attributes":{"agreement_type":{"type":"string","required":true},"content":{"type":"string","required":true},"guest_partner_name":{"type":"string","required":true},"host_partner_name":{"type":"string","required":true},"integration_account_name":{"type":"string","required":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"guest_identity":{"nesting_mode":3,"block":{"attributes":{"qualifier":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true},"host_identity":{"nesting_mode":3,"block":{"attributes":{"qualifier":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_logic_app_integration_account_assembly":{"block":{"attributes":{"assembly_name":{"type":"string","required":true},"assembly_version":{"type":"string","optional":true,"default":"0.0.0.0"},"content":{"type":"string","optional":true,"at_least_one_of":["content","content_link_uri"]},"content_link_uri":{"type":"string","optional":true,"at_least_one_of":["content","content_link_uri"]},"integration_account_name":{"type":"string","required":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_logic_app_integration_account_batch_configuration":{"block":{"attributes":{"batch_group_name":{"type":"string","required":true},"integration_account_name":{"type":"string","required":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"release_criteria":{"nesting_mode":3,"block":{"attributes":{"batch_size":{"type":"number","optional":true,"at_least_one_of":["release_criteria.0.batch_size","release_criteria.0.message_count","release_criteria.0.recurrence"]},"message_count":{"type":"number","optional":true,"at_least_one_of":["release_criteria.0.batch_size","release_criteria.0.message_count","release_criteria.0.recurrence"]}},"block_types":{"recurrence":{"nesting_mode":3,"block":{"attributes":{"end_time":{"type":"string","optional":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","required":true},"start_time":{"type":"string","optional":true},"time_zone":{"type":"string","optional":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"hours":{"type":["set","number"],"optional":true},"minutes":{"type":["set","number"],"optional":true},"month_days":{"type":["set","number"],"optional":true,"conflicts_with":["release_criteria.0.recurrence.0.schedule.0.week_days"]},"week_days":{"type":["set","string"],"optional":true,"conflicts_with":["release_criteria.0.recurrence.0.schedule.0.month_days","release_criteria.0.recurrence.0.schedule.0.monthly"]}},"block_types":{"monthly":{"nesting_mode":4,"block":{"attributes":{"week":{"type":"number","required":true},"weekday":{"type":"string","required":true}}},"optional":true,"conflicts_with":["release_criteria.0.recurrence.0.schedule.0.week_days"]}}},"optional":true}}},"optional":true,"at_least_one_of":["release_criteria.0.batch_size","release_criteria.0.message_count","release_criteria.0.recurrence"]}}},"required":true}}}},"azurerm_logic_app_integration_account_certificate":{"block":{"attributes":{"integration_account_name":{"type":"string","required":true},"metadata":{"type":"string","optional":true},"name":{"type":"string","required":true},"public_certificate":{"type":"string","optional":true,"at_least_one_of":["key_vault_key"]},"resource_group_name":{"type":"string","required":true}},"block_types":{"key_vault_key":{"nesting_mode":3,"block":{"attributes":{"key_name":{"type":"string","required":true},"key_vault_id":{"type":"string","required":true},"key_version":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["public_certificate"]}}}},"azurerm_logic_app_integration_account_map":{"block":{"attributes":{"content":{"type":"string","required":true},"integration_account_name":{"type":"string","required":true},"map_type":{"type":"string","required":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_logic_app_integration_account_partner":{"block":{"attributes":{"integration_account_name":{"type":"string","required":true},"metadata":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"business_identity":{"nesting_mode":4,"block":{"attributes":{"qualifier":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_logic_app_integration_account_schema":{"block":{"attributes":{"content":{"type":"string","required":true},"file_name":{"type":"string","optional":true},"integration_account_name":{"type":"string","required":true},"metadata":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_logic_app_integration_account_session":{"block":{"attributes":{"content":{"type":"string","required":true},"integration_account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_logic_app_standard":{"block":{"attributes":{"app_service_plan_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true,"computed":true},"bundle_version":{"type":"string","optional":true,"default":"[1.*, 2.0.0)"},"client_affinity_enabled":{"type":"bool","optional":true,"computed":true},"client_certificate_mode":{"type":"string","optional":true},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"https_only":{"type":"bool","optional":true,"default":false},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"scm_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"site_credential":{"type":["list",["object",{"password":"string","username":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"storage_account_share_name":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"use_extension_bundle":{"type":"bool","optional":true,"default":true},"version":{"type":"string","optional":true,"default":"~4"},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_content_share_enabled":{"type":"bool","optional":true}},"block_types":{"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":false},"app_scale_limit":{"type":"number","optional":true,"computed":true},"auto_swap_slot_name":{"type":"string","computed":true},"dotnet_framework_version":{"type":"string","optional":true,"default":"v4.0"},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"computed":true},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"linux_fx_version":{"type":"string","optional":true,"computed":true},"min_tls_version":{"type":"string","optional":true,"computed":true},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true,"default":false},"scm_min_tls_version":{"type":"string","optional":true,"computed":true},"scm_type":{"type":"string","optional":true,"computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker_process":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"computed":true},"websockets_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_logic_app_trigger_custom":{"block":{"attributes":{"body":{"type":"string","required":true},"callback_url":{"type":"string","computed":true},"logic_app_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_logic_app_trigger_http_request":{"block":{"attributes":{"callback_url":{"type":"string","computed":true},"logic_app_id":{"type":"string","required":true},"method":{"type":"string","optional":true},"name":{"type":"string","required":true},"relative_path":{"type":"string","optional":true},"schema":{"type":"string","required":true}}}},"azurerm_logic_app_trigger_recurrence":{"block":{"attributes":{"frequency":{"type":"string","required":true},"interval":{"type":"number","required":true},"logic_app_id":{"type":"string","required":true},"name":{"type":"string","required":true},"start_time":{"type":"string","optional":true},"time_zone":{"type":"string","optional":true,"computed":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"at_these_hours":{"type":["set","number"],"optional":true,"at_least_one_of":["schedule.0.at_these_hours","schedule.0.at_these_minutes","schedule.0.on_these_days"]},"at_these_minutes":{"type":["set","number"],"optional":true,"at_least_one_of":["schedule.0.at_these_hours","schedule.0.at_these_minutes","schedule.0.on_these_days"]},"on_these_days":{"type":["set","string"],"optional":true,"at_least_one_of":["schedule.0.at_these_hours","schedule.0.at_these_minutes","schedule.0.on_these_days"]}}},"optional":true}}}},"azurerm_logic_app_workflow":{"block":{"attributes":{"access_endpoint":{"type":"string","computed":true},"connector_endpoint_ip_addresses":{"type":["list","string"],"computed":true},"connector_outbound_ip_addresses":{"type":["list","string"],"computed":true},"enabled":{"type":"bool","optional":true,"default":true},"integration_service_environment_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"logic_app_integration_account_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workflow_endpoint_ip_addresses":{"type":["list","string"],"computed":true},"workflow_outbound_ip_addresses":{"type":["list","string"],"computed":true},"workflow_parameters":{"type":["map","string"],"optional":true},"workflow_schema":{"type":"string","optional":true,"default":"https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#"},"workflow_version":{"type":"string","optional":true,"default":"1.0.0.0"}},"block_types":{"access_control":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"allowed_caller_ip_address_range":{"type":["set","string"],"required":true}}},"optional":true},"content":{"nesting_mode":3,"block":{"attributes":{"allowed_caller_ip_address_range":{"type":["set","string"],"required":true}}},"optional":true},"trigger":{"nesting_mode":3,"block":{"attributes":{"allowed_caller_ip_address_range":{"type":["set","string"],"optional":true}},"block_types":{"open_authentication_policy":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"claim":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true},"workflow_management":{"nesting_mode":3,"block":{"attributes":{"allowed_caller_ip_address_range":{"type":["set","string"],"required":true}}},"optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_machine_learning_compute_cluster":{"block":{"attributes":{"description":{"type":"string","optional":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"machine_learning_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"node_public_ip_enabled":{"type":"bool","optional":true,"default":true},"ssh_public_access_enabled":{"type":"bool","optional":true,"default":false},"subnet_resource_id":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"vm_priority":{"type":"string","required":true},"vm_size":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"scale_settings":{"nesting_mode":3,"block":{"attributes":{"max_node_count":{"type":"number","required":true},"min_node_count":{"type":"number","required":true},"scale_down_nodes_after_idle_duration":{"type":"string","required":true}}},"required":true},"ssh":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","optional":true,"at_least_one_of":["ssh.0.admin_password","ssh.0.key_value"]},"admin_username":{"type":"string","required":true},"key_value":{"type":"string","optional":true,"at_least_one_of":["ssh.0.admin_password","ssh.0.key_value"]}}},"optional":true}}}},"azurerm_machine_learning_compute_instance":{"block":{"attributes":{"authorization_type":{"type":"string","optional":true},"description":{"type":"string","optional":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"machine_learning_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"node_public_ip_enabled":{"type":"bool","optional":true,"default":true},"subnet_resource_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_machine_size":{"type":"string","required":true}},"block_types":{"assign_to_user":{"nesting_mode":3,"block":{"attributes":{"object_id":{"type":"string","optional":true},"tenant_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"ssh":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","computed":true},"public_key":{"type":"string","required":true},"username":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_machine_learning_datastore_blobstorage":{"block":{"attributes":{"account_key":{"type":"string","optional":true},"description":{"type":"string","optional":true},"is_default":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"service_data_auth_identity":{"type":"string","optional":true,"default":"None"},"shared_access_signature":{"type":"string","optional":true},"storage_container_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_machine_learning_datastore_datalake_gen2":{"block":{"attributes":{"authority_url":{"type":"string","optional":true},"client_id":{"type":"string","optional":true,"required_with":["tenant_id","client_secret"]},"client_secret":{"type":"string","optional":true,"required_with":["tenant_id","client_id"]},"description":{"type":"string","optional":true},"is_default":{"type":"bool","computed":true},"name":{"type":"string","required":true},"service_data_identity":{"type":"string","optional":true,"default":"None"},"storage_container_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","optional":true,"required_with":["client_id","client_secret"]},"workspace_id":{"type":"string","required":true}}}},"azurerm_machine_learning_datastore_fileshare":{"block":{"attributes":{"account_key":{"type":"string","optional":true,"exactly_one_of":["account_key","shared_access_signature"]},"description":{"type":"string","optional":true},"is_default":{"type":"bool","computed":true},"name":{"type":"string","required":true},"service_data_identity":{"type":"string","optional":true,"default":"None"},"shared_access_signature":{"type":"string","optional":true,"at_least_one_of":["account_key","shared_access_signature"]},"storage_fileshare_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_machine_learning_inference_cluster":{"block":{"attributes":{"cluster_purpose":{"type":"string","optional":true,"default":"FastProd"},"description":{"type":"string","optional":true},"kubernetes_cluster_id":{"type":"string","required":true},"location":{"type":"string","required":true},"machine_learning_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"ssl":{"nesting_mode":3,"block":{"attributes":{"cert":{"type":"string","optional":true,"default":"","conflicts_with":["ssl.0.leaf_domain_label","ssl.0.overwrite_existing_domain"]},"cname":{"type":"string","optional":true,"default":"","conflicts_with":["ssl.0.leaf_domain_label","ssl.0.overwrite_existing_domain"]},"key":{"type":"string","optional":true,"default":"","conflicts_with":["ssl.0.leaf_domain_label","ssl.0.overwrite_existing_domain"]},"leaf_domain_label":{"type":"string","optional":true,"default":"","conflicts_with":["ssl.0.cert","ssl.0.key","ssl.0.cname"]},"overwrite_existing_domain":{"type":"bool","optional":true,"conflicts_with":["ssl.0.cert","ssl.0.key","ssl.0.cname"]}}},"optional":true}}}},"azurerm_machine_learning_synapse_spark":{"block":{"attributes":{"description":{"type":"string","optional":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"machine_learning_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"synapse_spark_pool_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_machine_learning_workspace":{"block":{"attributes":{"application_insights_id":{"type":"string","required":true},"container_registry_id":{"type":"string","optional":true},"description":{"type":"string","optional":true},"discovery_url":{"type":"string","computed":true},"friendly_name":{"type":"string","optional":true},"high_business_impact":{"type":"bool","optional":true},"image_build_compute_name":{"type":"string","optional":true},"key_vault_id":{"type":"string","required":true},"kind":{"type":"string","optional":true,"default":"Default"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_user_assigned_identity":{"type":"string","optional":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","optional":true,"default":"Basic"},"storage_account_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"v1_legacy_mode_enabled":{"type":"bool","optional":true,"default":false},"workspace_id":{"type":"string","computed":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"key_id":{"type":"string","required":true},"key_vault_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"feature_store":{"nesting_mode":3,"block":{"attributes":{"computer_spark_runtime_version":{"type":"string","optional":true},"offline_connection_name":{"type":"string","optional":true},"online_connection_name":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true},"managed_network":{"nesting_mode":3,"block":{"attributes":{"isolation_mode":{"type":"string","optional":true,"computed":true},"provision_on_creation_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true},"serverless_compute":{"nesting_mode":3,"block":{"attributes":{"public_ip_enabled":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_machine_learning_workspace_network_outbound_rule_fqdn":{"block":{"attributes":{"destination_fqdn":{"type":"string","required":true},"name":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_machine_learning_workspace_network_outbound_rule_private_endpoint":{"block":{"attributes":{"name":{"type":"string","required":true},"service_resource_id":{"type":"string","required":true},"spark_enabled":{"type":"bool","optional":true,"default":false},"sub_resource_target":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_machine_learning_workspace_network_outbound_rule_service_tag":{"block":{"attributes":{"name":{"type":"string","required":true},"port_ranges":{"type":"string","required":true},"protocol":{"type":"string","required":true},"service_tag":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_maintenance_assignment_dedicated_host":{"block":{"attributes":{"dedicated_host_id":{"type":"string","required":true},"location":{"type":"string","required":true},"maintenance_configuration_id":{"type":"string","required":true}}}},"azurerm_maintenance_assignment_dynamic_scope":{"block":{"attributes":{"maintenance_configuration_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"locations":{"type":["list","string"],"optional":true,"at_least_one_of":["filter.0.locations","filter.0.os_types","filter.0.resource_groups","filter.0.resource_types","filter.0.tags"]},"os_types":{"type":["list","string"],"optional":true,"at_least_one_of":["filter.0.locations","filter.0.os_types","filter.0.resource_groups","filter.0.resource_types","filter.0.tags"]},"resource_groups":{"type":["list","string"],"optional":true,"at_least_one_of":["filter.0.locations","filter.0.os_types","filter.0.resource_groups","filter.0.resource_types","filter.0.tags"]},"resource_types":{"type":["list","string"],"optional":true,"at_least_one_of":["filter.0.locations","filter.0.os_types","filter.0.resource_groups","filter.0.resource_types","filter.0.tags"]},"tag_filter":{"type":"string","optional":true,"default":"Any","required_with":["filter.0.tags"]}},"block_types":{"tags":{"nesting_mode":3,"block":{"attributes":{"tag":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.locations","filter.0.os_types","filter.0.resource_groups","filter.0.resource_types","filter.0.tags"]}}},"required":true}}}},"azurerm_maintenance_assignment_virtual_machine":{"block":{"attributes":{"location":{"type":"string","required":true},"maintenance_configuration_id":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}}}},"azurerm_maintenance_assignment_virtual_machine_scale_set":{"block":{"attributes":{"location":{"type":"string","required":true},"maintenance_configuration_id":{"type":"string","required":true},"virtual_machine_scale_set_id":{"type":"string","required":true}}}},"azurerm_maintenance_configuration":{"block":{"attributes":{"in_guest_user_patch_mode":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"properties":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"scope":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"visibility":{"type":"string","optional":true,"default":"Custom"}},"block_types":{"install_patches":{"nesting_mode":3,"block":{"attributes":{"reboot":{"type":"string","optional":true}},"block_types":{"linux":{"nesting_mode":3,"block":{"attributes":{"classifications_to_include":{"type":["list","string"],"optional":true},"package_names_mask_to_exclude":{"type":["list","string"],"optional":true},"package_names_mask_to_include":{"type":["list","string"],"optional":true}}},"optional":true},"windows":{"nesting_mode":3,"block":{"attributes":{"classifications_to_include":{"type":["list","string"],"optional":true},"kb_numbers_to_exclude":{"type":["list","string"],"optional":true},"kb_numbers_to_include":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"window":{"nesting_mode":3,"block":{"attributes":{"duration":{"type":"string","optional":true},"expiration_date_time":{"type":"string","optional":true},"recur_every":{"type":"string","optional":true},"start_date_time":{"type":"string","required":true},"time_zone":{"type":"string","required":true}}},"optional":true}}}},"azurerm_managed_application":{"block":{"attributes":{"application_definition_id":{"type":"string","optional":true},"kind":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_resource_group_name":{"type":"string","required":true},"name":{"type":"string","required":true},"outputs":{"type":["map","string"],"computed":true},"parameter_values":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"promotion_code":{"type":"string","optional":true},"publisher":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true}}}},"azurerm_managed_application_definition":{"block":{"attributes":{"create_ui_definition":{"type":"string","optional":true,"conflicts_with":["package_file_uri"],"required_with":["main_template"]},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"location":{"type":"string","required":true},"lock_level":{"type":"string","required":true},"main_template":{"type":"string","optional":true,"conflicts_with":["package_file_uri"],"required_with":["create_ui_definition"]},"name":{"type":"string","required":true},"package_enabled":{"type":"bool","optional":true,"default":true},"package_file_uri":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"authorization":{"nesting_mode":4,"block":{"attributes":{"role_definition_id":{"type":"string","required":true},"service_principal_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_managed_disk":{"block":{"attributes":{"create_option":{"type":"string","required":true},"disk_access_id":{"type":"string","optional":true},"disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["secure_vm_disk_encryption_set_id"]},"disk_iops_read_only":{"type":"number","optional":true,"computed":true},"disk_iops_read_write":{"type":"number","optional":true,"computed":true},"disk_mbps_read_only":{"type":"number","optional":true,"computed":true},"disk_mbps_read_write":{"type":"number","optional":true,"computed":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"edge_zone":{"type":"string","optional":true},"gallery_image_reference_id":{"type":"string","optional":true,"conflicts_with":["image_reference_id"]},"hyper_v_generation":{"type":"string","optional":true},"image_reference_id":{"type":"string","optional":true,"conflicts_with":["gallery_image_reference_id"]},"location":{"type":"string","required":true},"logical_sector_size":{"type":"number","optional":true,"computed":true},"max_shares":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"network_access_policy":{"type":"string","optional":true,"default":"AllowAll"},"on_demand_bursting_enabled":{"type":"bool","optional":true},"optimized_frequent_attach_enabled":{"type":"bool","optional":true,"default":false},"os_type":{"type":"string","optional":true},"performance_plus_enabled":{"type":"bool","optional":true,"default":false},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"secure_vm_disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["disk_encryption_set_id"]},"security_type":{"type":"string","optional":true},"source_resource_id":{"type":"string","optional":true},"source_uri":{"type":"string","optional":true,"computed":true},"storage_account_id":{"type":"string","optional":true},"storage_account_type":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","optional":true,"computed":true},"trusted_launch_enabled":{"type":"bool","optional":true},"upload_size_bytes":{"type":"number","optional":true},"zone":{"type":"string","optional":true}},"block_types":{"encryption_settings":{"nesting_mode":3,"block":{"block_types":{"disk_encryption_key":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"required":true},"key_encryption_key":{"nesting_mode":3,"block":{"attributes":{"key_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_managed_disk_sas_token":{"block":{"attributes":{"access_level":{"type":"string","required":true},"duration_in_seconds":{"type":"number","required":true},"managed_disk_id":{"type":"string","required":true},"sas_url":{"type":"string","computed":true}}}},"azurerm_managed_lustre_file_system":{"block":{"attributes":{"location":{"type":"string","required":true},"mgs_address":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"storage_capacity_in_tb":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"required":true}},"block_types":{"encryption_key":{"nesting_mode":3,"block":{"attributes":{"key_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true},"hsm_setting":{"nesting_mode":3,"block":{"attributes":{"container_id":{"type":"string","required":true},"import_prefix":{"type":"string","optional":true},"logging_container_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"maintenance_window":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"string","required":true},"time_of_day_in_utc":{"type":"string","required":true}}},"required":true},"root_squash":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"no_squash_nids":{"type":"string","required":true},"squash_gid":{"type":"number","optional":true,"default":0},"squash_uid":{"type":"number","optional":true,"default":0}}},"optional":true}}}},"azurerm_management_group":{"block":{"attributes":{"display_name":{"type":"string","optional":true,"computed":true},"name":{"type":"string","optional":true,"computed":true},"parent_management_group_id":{"type":"string","optional":true,"computed":true},"subscription_ids":{"type":["set","string"],"optional":true,"computed":true},"tenant_scoped_id":{"type":"string","computed":true}}}},"azurerm_management_group_policy_assignment":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"enforce":{"type":"bool","optional":true,"default":true},"location":{"type":"string","optional":true},"management_group_id":{"type":"string","required":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"not_scopes":{"type":["list","string"],"optional":true},"parameters":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"non_compliance_message":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true}}},"optional":true},"overrides":{"nesting_mode":3,"block":{"attributes":{"value":{"type":"string","required":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","optional":true,"default":"policyDefinitionReferenceId"},"not_in":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"resource_selectors":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","required":true},"not_in":{"type":["list","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_management_group_policy_exemption":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"exemption_category":{"type":"string","required":true},"expires_on":{"type":"string","optional":true},"management_group_id":{"type":"string","required":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_ids":{"type":["list","string"],"optional":true}}}},"azurerm_management_group_policy_remediation":{"block":{"attributes":{"failure_percentage":{"type":"number","optional":true},"location_filters":{"type":["list","string"],"optional":true},"management_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"parallel_deployments":{"type":"number","optional":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true},"resource_count":{"type":"number","optional":true}}}},"azurerm_management_group_policy_set_definition":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"management_group_id":{"type":"string","required":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"policy_type":{"type":"string","required":true}},"block_types":{"policy_definition_group":{"nesting_mode":4,"block":{"attributes":{"additional_metadata_resource_id":{"type":"string","optional":true},"category":{"type":"string","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"name":{"type":"string","required":true}}},"optional":true},"policy_definition_reference":{"nesting_mode":3,"block":{"attributes":{"parameter_values":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true},"policy_group_names":{"type":["set","string"],"optional":true},"reference_id":{"type":"string","optional":true,"computed":true},"version":{"type":"string","optional":true,"computed":true}}},"required":true}}}},"azurerm_management_group_subscription_association":{"block":{"attributes":{"management_group_id":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}}}},"azurerm_management_group_template_deployment":{"block":{"attributes":{"debug_level":{"type":"string","optional":true},"location":{"type":"string","required":true},"management_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"output_content":{"type":"string","computed":true},"parameters_content":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"template_content":{"type":"string","optional":true,"computed":true,"exactly_one_of":["template_content","template_spec_version_id"]},"template_spec_version_id":{"type":"string","optional":true,"exactly_one_of":["template_content","template_spec_version_id"]}}}},"azurerm_management_lock":{"block":{"attributes":{"lock_level":{"type":"string","required":true},"name":{"type":"string","required":true},"notes":{"type":"string","optional":true},"scope":{"type":"string","required":true}}}},"azurerm_maps_account":{"block":{"attributes":{"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"x_ms_client_id":{"type":"string","computed":true}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["list","string"],"required":true}}},"optional":true},"data_store":{"nesting_mode":3,"block":{"attributes":{"storage_account_id":{"type":"string","optional":true},"unique_name":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_maps_creator":{"block":{"attributes":{"location":{"type":"string","required":true},"maps_account_id":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_units":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_marketplace_agreement":{"block":{"attributes":{"license_text_link":{"type":"string","computed":true},"offer":{"type":"string","required":true},"plan":{"type":"string","required":true},"privacy_policy_link":{"type":"string","computed":true},"publisher":{"type":"string","required":true}}}},"azurerm_marketplace_role_assignment":{"block":{"attributes":{"condition":{"type":"string","optional":true,"required_with":["condition_version"]},"condition_version":{"type":"string","optional":true,"required_with":["condition"]},"delegated_managed_identity_resource_id":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","optional":true},"principal_id":{"type":"string","required":true},"principal_type":{"type":"string","computed":true},"role_definition_id":{"type":"string","optional":true,"conflicts_with":["role_definition_name"]},"role_definition_name":{"type":"string","optional":true,"conflicts_with":["role_definition_id"]},"skip_service_principal_aad_check":{"type":"bool","optional":true,"default":false}}}},"azurerm_mobile_network":{"block":{"attributes":{"location":{"type":"string","required":true},"mobile_country_code":{"type":"string","required":true},"mobile_network_code":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"service_key":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_mobile_network_attached_data_network":{"block":{"attributes":{"dns_addresses":{"type":["list","string"],"required":true},"location":{"type":"string","required":true},"mobile_network_data_network_name":{"type":"string","required":true},"mobile_network_packet_core_data_plane_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"user_equipment_address_pool_prefixes":{"type":["list","string"],"optional":true,"at_least_one_of":["user_equipment_address_pool_prefixes","user_equipment_static_address_pool_prefixes"]},"user_equipment_static_address_pool_prefixes":{"type":["list","string"],"optional":true,"at_least_one_of":["user_equipment_address_pool_prefixes","user_equipment_static_address_pool_prefixes"]},"user_plane_access_ipv4_address":{"type":"string","optional":true},"user_plane_access_ipv4_gateway":{"type":"string","optional":true},"user_plane_access_ipv4_subnet":{"type":"string","optional":true},"user_plane_access_name":{"type":"string","optional":true}},"block_types":{"network_address_port_translation":{"nesting_mode":3,"block":{"attributes":{"icmp_pinhole_timeout_in_seconds":{"type":"number","optional":true,"default":180},"pinhole_maximum_number":{"type":"number","optional":true,"default":65536},"tcp_pinhole_timeout_in_seconds":{"type":"number","optional":true,"default":180},"tcp_port_reuse_minimum_hold_time_in_seconds":{"type":"number","optional":true,"default":120},"udp_pinhole_timeout_in_seconds":{"type":"number","optional":true,"default":180},"udp_port_reuse_minimum_hold_time_in_seconds":{"type":"number","optional":true,"default":60}},"block_types":{"port_range":{"nesting_mode":3,"block":{"attributes":{"maximum":{"type":"number","optional":true,"default":49999},"minimum":{"type":"number","optional":true,"default":1024}}},"optional":true}}},"optional":true}}}},"azurerm_mobile_network_data_network":{"block":{"attributes":{"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_mobile_network_packet_core_control_plane":{"block":{"attributes":{"control_plane_access_ipv4_address":{"type":"string","optional":true},"control_plane_access_ipv4_gateway":{"type":"string","optional":true},"control_plane_access_ipv4_subnet":{"type":"string","optional":true},"control_plane_access_name":{"type":"string","optional":true},"core_network_technology":{"type":"string","optional":true},"interoperability_settings_json":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"site_ids":{"type":["list","string"],"required":true},"sku":{"type":"string","required":true},"software_version":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"user_equipment_mtu_in_bytes":{"type":"number","optional":true,"default":1440}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"local_diagnostics_access":{"nesting_mode":3,"block":{"attributes":{"authentication_type":{"type":"string","required":true},"https_server_certificate_url":{"type":"string","optional":true}}},"required":true},"platform":{"nesting_mode":3,"block":{"attributes":{"arc_kubernetes_cluster_id":{"type":"string","optional":true,"at_least_one_of":["platform.0.edge_device_id","platform.0.stack_hci_cluster_id","platform.0.arc_kubernetes_cluster_id","platform.0.custom_location_id"]},"custom_location_id":{"type":"string","optional":true,"at_least_one_of":["platform.0.edge_device_id","platform.0.stack_hci_cluster_id","platform.0.arc_kubernetes_cluster_id","platform.0.custom_location_id"]},"edge_device_id":{"type":"string","optional":true,"at_least_one_of":["platform.0.edge_device_id","platform.0.stack_hci_cluster_id","platform.0.arc_kubernetes_cluster_id","platform.0.custom_location_id"]},"stack_hci_cluster_id":{"type":"string","optional":true,"at_least_one_of":["platform.0.edge_device_id","platform.0.stack_hci_cluster_id","platform.0.arc_kubernetes_cluster_id","platform.0.custom_location_id"]},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mobile_network_packet_core_data_plane":{"block":{"attributes":{"location":{"type":"string","required":true},"mobile_network_packet_core_control_plane_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"user_plane_access_ipv4_address":{"type":"string","optional":true},"user_plane_access_ipv4_gateway":{"type":"string","optional":true},"user_plane_access_ipv4_subnet":{"type":"string","optional":true},"user_plane_access_name":{"type":"string","optional":true}}}},"azurerm_mobile_network_service":{"block":{"attributes":{"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"service_precedence":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"pcc_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"precedence":{"type":"number","required":true},"traffic_control_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"qos_policy":{"nesting_mode":3,"block":{"attributes":{"allocation_and_retention_priority_level":{"type":"number","optional":true},"preemption_capability":{"type":"string","optional":true,"default":"NotPreempt"},"preemption_vulnerability":{"type":"string","optional":true,"default":"Preemptable"},"qos_indicator":{"type":"number","required":true}},"block_types":{"guaranteed_bit_rate":{"nesting_mode":3,"block":{"attributes":{"downlink":{"type":"string","required":true},"uplink":{"type":"string","required":true}}},"optional":true},"maximum_bit_rate":{"nesting_mode":3,"block":{"attributes":{"downlink":{"type":"string","required":true},"uplink":{"type":"string","required":true}}},"required":true}}},"optional":true},"service_data_flow_template":{"nesting_mode":3,"block":{"attributes":{"direction":{"type":"string","required":true},"name":{"type":"string","required":true},"ports":{"type":["list","string"],"optional":true},"protocol":{"type":["list","string"],"required":true},"remote_ip_list":{"type":["list","string"],"required":true}}},"required":true}}},"required":true},"service_qos_policy":{"nesting_mode":3,"block":{"attributes":{"allocation_and_retention_priority_level":{"type":"number","optional":true,"default":9},"preemption_capability":{"type":"string","optional":true},"preemption_vulnerability":{"type":"string","optional":true},"qos_indicator":{"type":"number","optional":true}},"block_types":{"maximum_bit_rate":{"nesting_mode":3,"block":{"attributes":{"downlink":{"type":"string","required":true},"uplink":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_mobile_network_sim":{"block":{"attributes":{"authentication_key":{"type":"string","required":true},"device_type":{"type":"string","optional":true},"integrated_circuit_card_identifier":{"type":"string","required":true},"international_mobile_subscriber_identity":{"type":"string","required":true},"mobile_network_sim_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"operator_key_code":{"type":"string","required":true},"sim_policy_id":{"type":"string","optional":true},"sim_state":{"type":"string","computed":true},"vendor_key_fingerprint":{"type":"string","computed":true},"vendor_name":{"type":"string","computed":true}},"block_types":{"static_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"attached_data_network_id":{"type":"string","required":true},"slice_id":{"type":"string","required":true},"static_ipv4_address":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_mobile_network_sim_group":{"block":{"attributes":{"encryption_key_url":{"type":"string","optional":true},"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mobile_network_sim_policy":{"block":{"attributes":{"default_slice_id":{"type":"string","required":true},"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"rat_frequency_selection_priority_index":{"type":"number","optional":true},"registration_timer_in_seconds":{"type":"number","optional":true,"default":3240},"tags":{"type":["map","string"],"optional":true}},"block_types":{"slice":{"nesting_mode":3,"block":{"attributes":{"default_data_network_id":{"type":"string","required":true},"slice_id":{"type":"string","required":true}},"block_types":{"data_network":{"nesting_mode":3,"block":{"attributes":{"additional_allowed_session_types":{"type":["list","string"],"optional":true},"allocation_and_retention_priority_level":{"type":"number","optional":true,"default":0},"allowed_services_ids":{"type":["list","string"],"required":true},"data_network_id":{"type":"string","required":true},"default_session_type":{"type":"string","optional":true,"default":"IPv4"},"max_buffered_packets":{"type":"number","optional":true,"default":10},"preemption_capability":{"type":"string","optional":true,"default":"NotPreempt"},"preemption_vulnerability":{"type":"string","optional":true,"default":"NotPreemptable"},"qos_indicator":{"type":"number","required":true}},"block_types":{"session_aggregate_maximum_bit_rate":{"nesting_mode":3,"block":{"attributes":{"downlink":{"type":"string","required":true},"uplink":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true},"user_equipment_aggregate_maximum_bit_rate":{"nesting_mode":3,"block":{"attributes":{"downlink":{"type":"string","required":true},"uplink":{"type":"string","required":true}}},"required":true}}}},"azurerm_mobile_network_site":{"block":{"attributes":{"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"network_function_ids":{"type":["list","string"],"computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_mobile_network_slice":{"block":{"attributes":{"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"slice_differentiator":{"type":"string","optional":true,"computed":true,"conflicts_with":["single_network_slice_selection_assistance_information"]},"slice_service_type":{"type":"number","optional":true,"computed":true,"conflicts_with":["single_network_slice_selection_assistance_information"]},"tags":{"type":["map","string"],"optional":true}},"block_types":{"single_network_slice_selection_assistance_information":{"nesting_mode":3,"block":{"attributes":{"slice_differentiator":{"type":"string","optional":true},"slice_service_type":{"type":"number","required":true}}},"optional":true,"computed":true,"conflicts_with":["slice_service_type","slice_differentiator"]}}}},"azurerm_mongo_cluster":{"block":{"attributes":{"administrator_password":{"type":"string","optional":true,"required_with":["administrator_username"]},"administrator_username":{"type":"string","optional":true,"required_with":["administrator_password"]},"compute_tier":{"type":"string","optional":true},"connection_strings":{"type":["list",["object",{"description":"string","name":"string","value":"string"}]],"computed":true},"create_mode":{"type":"string","optional":true,"default":"Default"},"high_availability_mode":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"preview_features":{"type":["list","string"],"optional":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"shard_count":{"type":"number","optional":true},"source_location":{"type":"string","optional":true,"required_with":["source_server_id"]},"source_server_id":{"type":"string","optional":true},"storage_size_in_gb":{"type":"number","optional":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true}}}},"azurerm_monitor_aad_diagnostic_setting":{"block":{"attributes":{"eventhub_authorization_rule_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id"]},"eventhub_name":{"type":"string","optional":true},"log_analytics_workspace_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id"]},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id"]}},"block_types":{"enabled_log":{"nesting_mode":4,"block":{"attributes":{"category":{"type":"string","required":true}},"block_types":{"retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true,"default":0},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true}}},"optional":true}}}},"azurerm_monitor_action_group":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","optional":true,"default":"global"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"short_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"arm_role_receiver":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"role_id":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true}}},"optional":true},"automation_runbook_receiver":{"nesting_mode":3,"block":{"attributes":{"automation_account_id":{"type":"string","required":true},"is_global_runbook":{"type":"bool","required":true},"name":{"type":"string","required":true},"runbook_name":{"type":"string","required":true},"service_uri":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true,"default":false},"webhook_resource_id":{"type":"string","required":true}}},"optional":true},"azure_app_push_receiver":{"nesting_mode":3,"block":{"attributes":{"email_address":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true},"azure_function_receiver":{"nesting_mode":3,"block":{"attributes":{"function_app_resource_id":{"type":"string","required":true},"function_name":{"type":"string","required":true},"http_trigger_url":{"type":"string","required":true},"name":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true}}},"optional":true},"email_receiver":{"nesting_mode":3,"block":{"attributes":{"email_address":{"type":"string","required":true},"name":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true}}},"optional":true},"event_hub_receiver":{"nesting_mode":3,"block":{"attributes":{"event_hub_name":{"type":"string","required":true},"event_hub_namespace":{"type":"string","required":true},"name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true},"tenant_id":{"type":"string","optional":true,"computed":true},"use_common_alert_schema":{"type":"bool","optional":true}}},"optional":true},"itsm_receiver":{"nesting_mode":3,"block":{"attributes":{"connection_id":{"type":"string","required":true},"name":{"type":"string","required":true},"region":{"type":"string","required":true},"ticket_configuration":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}},"optional":true},"logic_app_receiver":{"nesting_mode":3,"block":{"attributes":{"callback_url":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_id":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true}}},"optional":true},"sms_receiver":{"nesting_mode":3,"block":{"attributes":{"country_code":{"type":"string","required":true},"name":{"type":"string","required":true},"phone_number":{"type":"string","required":true}}},"optional":true},"voice_receiver":{"nesting_mode":3,"block":{"attributes":{"country_code":{"type":"string","required":true},"name":{"type":"string","required":true},"phone_number":{"type":"string","required":true}}},"optional":true},"webhook_receiver":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"service_uri":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true}},"block_types":{"aad_auth":{"nesting_mode":3,"block":{"attributes":{"identifier_uri":{"type":"string","optional":true,"computed":true},"object_id":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true}}},"optional":true}}}},"azurerm_monitor_activity_log_alert":{"block":{"attributes":{"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["set","string"],"required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_group_id":{"type":"string","required":true},"webhook_properties":{"type":["map","string"],"optional":true}}},"optional":true},"criteria":{"nesting_mode":3,"block":{"attributes":{"caller":{"type":"string","optional":true},"category":{"type":"string","required":true},"level":{"type":"string","optional":true,"conflicts_with":["criteria.0.levels"]},"levels":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.level"]},"operation_name":{"type":"string","optional":true},"recommendation_category":{"type":"string","optional":true,"conflicts_with":["criteria.0.recommendation_type"]},"recommendation_impact":{"type":"string","optional":true,"conflicts_with":["criteria.0.recommendation_type"]},"recommendation_type":{"type":"string","optional":true,"conflicts_with":["criteria.0.recommendation_category","criteria.0.recommendation_impact"]},"resource_group":{"type":"string","optional":true,"conflicts_with":["criteria.0.resource_groups"]},"resource_groups":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.resource_group"]},"resource_id":{"type":"string","optional":true,"conflicts_with":["criteria.0.resource_ids"]},"resource_ids":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.resource_id"]},"resource_provider":{"type":"string","optional":true,"conflicts_with":["criteria.0.resource_providers"]},"resource_providers":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.resource_provider"]},"resource_type":{"type":"string","optional":true,"conflicts_with":["criteria.0.resource_types"]},"resource_types":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.resource_type"]},"status":{"type":"string","optional":true,"conflicts_with":["criteria.0.statuses"]},"statuses":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.status"]},"sub_status":{"type":"string","optional":true,"conflicts_with":["criteria.0.sub_statuses"]},"sub_statuses":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.sub_status"]}},"block_types":{"resource_health":{"nesting_mode":3,"block":{"attributes":{"current":{"type":["set","string"],"optional":true},"previous":{"type":["set","string"],"optional":true},"reason":{"type":["set","string"],"optional":true}}},"optional":true,"computed":true,"conflicts_with":["criteria.0.caller","criteria.0.service_health"]},"service_health":{"nesting_mode":3,"block":{"attributes":{"events":{"type":["set","string"],"optional":true},"locations":{"type":["set","string"],"optional":true},"services":{"type":["set","string"],"optional":true}}},"optional":true,"computed":true,"conflicts_with":["criteria.0.caller","criteria.0.resource_health"]}}},"required":true}}}},"azurerm_monitor_alert_processing_rule_action_group":{"block":{"attributes":{"add_action_group_ids":{"type":["list","string"],"required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["list","string"],"required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"condition":{"nesting_mode":3,"block":{"block_types":{"alert_context":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"alert_rule_id":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"alert_rule_name":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"description":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"monitor_condition":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"monitor_service":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"severity":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"signal_type":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource_group":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource_type":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]}}},"optional":true},"schedule":{"nesting_mode":3,"block":{"attributes":{"effective_from":{"type":"string","optional":true},"effective_until":{"type":"string","optional":true},"time_zone":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"recurrence":{"nesting_mode":3,"block":{"block_types":{"daily":{"nesting_mode":3,"block":{"attributes":{"end_time":{"type":"string","required":true},"start_time":{"type":"string","required":true}}},"optional":true},"monthly":{"nesting_mode":3,"block":{"attributes":{"days_of_month":{"type":["list","number"],"required":true},"end_time":{"type":"string","optional":true},"start_time":{"type":"string","optional":true}}},"optional":true},"weekly":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["list","string"],"required":true},"end_time":{"type":"string","optional":true},"start_time":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_monitor_alert_processing_rule_suppression":{"block":{"attributes":{"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["list","string"],"required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"condition":{"nesting_mode":3,"block":{"block_types":{"alert_context":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"alert_rule_id":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"alert_rule_name":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"description":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"monitor_condition":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"monitor_service":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"severity":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"signal_type":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource_group":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource_type":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]}}},"optional":true},"schedule":{"nesting_mode":3,"block":{"attributes":{"effective_from":{"type":"string","optional":true},"effective_until":{"type":"string","optional":true},"time_zone":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"recurrence":{"nesting_mode":3,"block":{"block_types":{"daily":{"nesting_mode":3,"block":{"attributes":{"end_time":{"type":"string","required":true},"start_time":{"type":"string","required":true}}},"optional":true},"monthly":{"nesting_mode":3,"block":{"attributes":{"days_of_month":{"type":["list","number"],"required":true},"end_time":{"type":"string","optional":true},"start_time":{"type":"string","optional":true}}},"optional":true},"weekly":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["list","string"],"required":true},"end_time":{"type":"string","optional":true},"start_time":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_monitor_alert_prometheus_rule_group":{"block":{"attributes":{"cluster_name":{"type":"string","optional":true},"description":{"type":"string","optional":true},"interval":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"rule_group_enabled":{"type":"bool","optional":true},"scopes":{"type":["list","string"],"required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"alert":{"type":"string","optional":true},"annotations":{"type":["map","string"],"optional":true},"enabled":{"type":"bool","optional":true},"expression":{"type":"string","required":true},"for":{"type":"string","optional":true},"labels":{"type":["map","string"],"optional":true},"record":{"type":"string","optional":true},"severity":{"type":"number","optional":true}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_group_id":{"type":"string","required":true},"action_properties":{"type":["map","string"],"optional":true}}},"optional":true},"alert_resolution":{"nesting_mode":3,"block":{"attributes":{"auto_resolved":{"type":"bool","optional":true},"time_to_resolve":{"type":"string","optional":true}}},"optional":true}}},"required":true}}}},"azurerm_monitor_autoscale_setting":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_resource_id":{"type":"string","required":true}},"block_types":{"notification":{"nesting_mode":3,"block":{"block_types":{"email":{"nesting_mode":3,"block":{"attributes":{"custom_emails":{"type":["list","string"],"optional":true},"send_to_subscription_administrator":{"type":"bool","optional":true,"default":false},"send_to_subscription_co_administrator":{"type":"bool","optional":true,"default":false}}},"optional":true,"at_least_one_of":["notification.0.email","notification.0.webhook"]},"webhook":{"nesting_mode":3,"block":{"attributes":{"properties":{"type":["map","string"],"optional":true},"service_uri":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["notification.0.email","notification.0.webhook"]}}},"optional":true},"predictive":{"nesting_mode":3,"block":{"attributes":{"look_ahead_time":{"type":"string","optional":true},"scale_mode":{"type":"string","required":true}}},"optional":true},"profile":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"capacity":{"nesting_mode":3,"block":{"attributes":{"default":{"type":"number","required":true},"maximum":{"type":"number","required":true},"minimum":{"type":"number","required":true}}},"required":true},"fixed_date":{"nesting_mode":3,"block":{"attributes":{"end":{"type":"string","required":true},"start":{"type":"string","required":true},"timezone":{"type":"string","optional":true,"default":"UTC"}}},"optional":true},"recurrence":{"nesting_mode":3,"block":{"attributes":{"days":{"type":["list","string"],"required":true},"hours":{"type":["list","number"],"required":true},"minutes":{"type":["list","number"],"required":true},"timezone":{"type":"string","optional":true,"default":"UTC"}}},"optional":true},"rule":{"nesting_mode":3,"block":{"block_types":{"metric_trigger":{"nesting_mode":3,"block":{"attributes":{"divide_by_instance_count":{"type":"bool","optional":true},"metric_name":{"type":"string","required":true},"metric_namespace":{"type":"string","optional":true},"metric_resource_id":{"type":"string","required":true},"operator":{"type":"string","required":true},"statistic":{"type":"string","required":true},"threshold":{"type":"number","required":true},"time_aggregation":{"type":"string","required":true},"time_grain":{"type":"string","required":true},"time_window":{"type":"string","required":true}},"block_types":{"dimensions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true}}},"required":true},"scale_action":{"nesting_mode":3,"block":{"attributes":{"cooldown":{"type":"string","required":true},"direction":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"number","required":true}}},"required":true}}},"optional":true}}},"required":true}}}},"azurerm_monitor_data_collection_endpoint":{"block":{"attributes":{"configuration_access_endpoint":{"type":"string","computed":true},"description":{"type":"string","optional":true},"immutable_id":{"type":"string","computed":true},"kind":{"type":"string","optional":true},"location":{"type":"string","required":true},"logs_ingestion_endpoint":{"type":"string","computed":true},"metrics_ingestion_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_monitor_data_collection_rule":{"block":{"attributes":{"data_collection_endpoint_id":{"type":"string","optional":true},"description":{"type":"string","optional":true},"immutable_id":{"type":"string","computed":true},"kind":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"data_flow":{"nesting_mode":3,"block":{"attributes":{"built_in_transform":{"type":"string","optional":true},"destinations":{"type":["list","string"],"required":true},"output_stream":{"type":"string","optional":true},"streams":{"type":["list","string"],"required":true},"transform_kql":{"type":"string","optional":true}}},"required":true},"data_sources":{"nesting_mode":3,"block":{"block_types":{"data_import":{"nesting_mode":3,"block":{"block_types":{"event_hub_data_source":{"nesting_mode":3,"block":{"attributes":{"consumer_group":{"type":"string","optional":true},"name":{"type":"string","required":true},"stream":{"type":"string","required":true}}},"required":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"extension_json":{"type":"string","optional":true},"extension_name":{"type":"string","required":true},"input_data_sources":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true},"iis_log":{"nesting_mode":3,"block":{"attributes":{"log_directories":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true},"log_file":{"nesting_mode":3,"block":{"attributes":{"file_patterns":{"type":["list","string"],"required":true},"format":{"type":"string","required":true},"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}},"block_types":{"settings":{"nesting_mode":3,"block":{"block_types":{"text":{"nesting_mode":3,"block":{"attributes":{"record_start_timestamp_format":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true},"performance_counter":{"nesting_mode":3,"block":{"attributes":{"counter_specifiers":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"sampling_frequency_in_seconds":{"type":"number","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true},"platform_telemetry":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true},"prometheus_forwarder":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}},"block_types":{"label_include_filter":{"nesting_mode":4,"block":{"attributes":{"label":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"syslog":{"nesting_mode":3,"block":{"attributes":{"facility_names":{"type":["list","string"],"required":true},"log_levels":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true},"windows_event_log":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true},"x_path_queries":{"type":["list","string"],"required":true}}},"optional":true},"windows_firewall_log":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true},"destinations":{"nesting_mode":3,"block":{"block_types":{"azure_monitor_metrics":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"event_hub":{"nesting_mode":3,"block":{"attributes":{"event_hub_id":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"event_hub_direct":{"nesting_mode":3,"block":{"attributes":{"event_hub_id":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"log_analytics":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"workspace_resource_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"monitor_account":{"nesting_mode":3,"block":{"attributes":{"monitor_account_id":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"storage_blob":{"nesting_mode":3,"block":{"attributes":{"container_name":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"storage_blob_direct":{"nesting_mode":3,"block":{"attributes":{"container_name":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"storage_table_direct":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"table_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"stream_declaration":{"nesting_mode":4,"block":{"attributes":{"stream_name":{"type":"string","required":true}},"block_types":{"column":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_monitor_data_collection_rule_association":{"block":{"attributes":{"data_collection_endpoint_id":{"type":"string","optional":true,"exactly_one_of":["data_collection_endpoint_id","data_collection_rule_id"]},"data_collection_rule_id":{"type":"string","optional":true,"exactly_one_of":["data_collection_endpoint_id","data_collection_rule_id"],"required_with":["name"]},"description":{"type":"string","optional":true},"name":{"type":"string","optional":true,"default":"configurationAccessEndpoint"},"target_resource_id":{"type":"string","required":true}}}},"azurerm_monitor_diagnostic_setting":{"block":{"attributes":{"eventhub_authorization_rule_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id","partner_solution_id"]},"eventhub_name":{"type":"string","optional":true},"log_analytics_destination_type":{"type":"string","optional":true,"computed":true},"log_analytics_workspace_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id","partner_solution_id"]},"name":{"type":"string","required":true},"partner_solution_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id","partner_solution_id"]},"storage_account_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id","partner_solution_id"]},"target_resource_id":{"type":"string","required":true}},"block_types":{"enabled_log":{"nesting_mode":4,"block":{"attributes":{"category":{"type":"string","optional":true},"category_group":{"type":"string","optional":true}},"block_types":{"retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true},"enabled":{"type":"bool","required":true}}},"optional":true}}},"optional":true,"at_least_one_of":["enabled_log","enabled_metric","metric"]},"enabled_metric":{"nesting_mode":4,"block":{"attributes":{"category":{"type":"string","required":true}}},"optional":true,"computed":true,"conflicts_with":["metric"],"at_least_one_of":["enabled_log","enabled_metric","metric"]},"metric":{"nesting_mode":4,"block":{"attributes":{"category":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true},"enabled":{"type":"bool","required":true}}},"optional":true}}},"optional":true,"computed":true,"conflicts_with":["enabled_metric"],"at_least_one_of":["enabled_log","enabled_metric","metric"]}}}},"azurerm_monitor_metric_alert":{"block":{"attributes":{"auto_mitigate":{"type":"bool","optional":true,"default":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"frequency":{"type":"string","optional":true,"default":"PT1M"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["set","string"],"required":true},"severity":{"type":"number","optional":true,"default":3},"tags":{"type":["map","string"],"optional":true},"target_resource_location":{"type":"string","optional":true,"computed":true},"target_resource_type":{"type":"string","optional":true,"computed":true},"window_size":{"type":"string","optional":true,"default":"PT5M"}},"block_types":{"action":{"nesting_mode":4,"block":{"attributes":{"action_group_id":{"type":"string","required":true},"webhook_properties":{"type":["map","string"],"optional":true}}},"optional":true},"application_insights_web_test_location_availability_criteria":{"nesting_mode":3,"block":{"attributes":{"component_id":{"type":"string","required":true},"failed_location_count":{"type":"number","required":true},"web_test_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["criteria","dynamic_criteria","application_insights_web_test_location_availability_criteria"]},"criteria":{"nesting_mode":3,"block":{"attributes":{"aggregation":{"type":"string","required":true},"metric_name":{"type":"string","required":true},"metric_namespace":{"type":"string","required":true},"operator":{"type":"string","required":true},"skip_metric_validation":{"type":"bool","optional":true,"default":false},"threshold":{"type":"number","required":true}},"block_types":{"dimension":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true,"exactly_one_of":["criteria","dynamic_criteria","application_insights_web_test_location_availability_criteria"]},"dynamic_criteria":{"nesting_mode":3,"block":{"attributes":{"aggregation":{"type":"string","required":true},"alert_sensitivity":{"type":"string","required":true},"evaluation_failure_count":{"type":"number","optional":true,"default":4},"evaluation_total_count":{"type":"number","optional":true,"default":4},"ignore_data_before":{"type":"string","optional":true},"metric_name":{"type":"string","required":true},"metric_namespace":{"type":"string","required":true},"operator":{"type":"string","required":true},"skip_metric_validation":{"type":"bool","optional":true}},"block_types":{"dimension":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true,"exactly_one_of":["criteria","dynamic_criteria","application_insights_web_test_location_availability_criteria"]}}}},"azurerm_monitor_private_link_scope":{"block":{"attributes":{"ingestion_access_mode":{"type":"string","optional":true,"default":"Open"},"name":{"type":"string","required":true},"query_access_mode":{"type":"string","optional":true,"default":"Open"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_monitor_private_link_scoped_service":{"block":{"attributes":{"linked_resource_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scope_name":{"type":"string","required":true}}}},"azurerm_monitor_scheduled_query_rules_alert":{"block":{"attributes":{"authorized_resource_ids":{"type":["set","string"],"optional":true},"auto_mitigation_enabled":{"type":"bool","optional":true,"default":false,"conflicts_with":["throttling"]},"data_source_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"frequency":{"type":"number","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"query":{"type":"string","required":true},"query_type":{"type":"string","optional":true,"default":"ResultCount"},"resource_group_name":{"type":"string","required":true},"severity":{"type":"number","optional":true},"tags":{"type":["map","string"],"optional":true},"throttling":{"type":"number","optional":true,"conflicts_with":["auto_mitigation_enabled"]},"time_window":{"type":"number","required":true}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_group":{"type":["set","string"],"required":true},"custom_webhook_payload":{"type":"string","optional":true},"email_subject":{"type":"string","optional":true}}},"required":true},"trigger":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"threshold":{"type":"number","required":true}},"block_types":{"metric_trigger":{"nesting_mode":3,"block":{"attributes":{"metric_column":{"type":"string","optional":true},"metric_trigger_type":{"type":"string","required":true},"operator":{"type":"string","required":true},"threshold":{"type":"number","required":true}}},"optional":true}}},"required":true}}}},"azurerm_monitor_scheduled_query_rules_alert_v2":{"block":{"attributes":{"auto_mitigation_enabled":{"type":"bool","optional":true,"default":false},"created_with_api_version":{"type":"string","computed":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"evaluation_frequency":{"type":"string","required":true},"is_a_legacy_log_analytics_rule":{"type":"bool","computed":true},"is_workspace_alerts_storage_configured":{"type":"bool","computed":true},"location":{"type":"string","required":true},"mute_actions_after_alert_duration":{"type":"string","optional":true},"name":{"type":"string","required":true},"query_time_range_override":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["list","string"],"required":true},"severity":{"type":"number","required":true},"skip_query_validation":{"type":"bool","optional":true},"tags":{"type":["map","string"],"optional":true},"target_resource_types":{"type":["list","string"],"optional":true},"window_duration":{"type":"string","required":true},"workspace_alerts_storage_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_groups":{"type":["list","string"],"optional":true},"custom_properties":{"type":["map","string"],"optional":true}}},"optional":true},"criteria":{"nesting_mode":3,"block":{"attributes":{"metric_measure_column":{"type":"string","optional":true},"operator":{"type":"string","required":true},"query":{"type":"string","required":true},"resource_id_column":{"type":"string","optional":true},"threshold":{"type":"number","required":true},"time_aggregation_method":{"type":"string","required":true}},"block_types":{"dimension":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true},"failing_periods":{"nesting_mode":3,"block":{"attributes":{"minimum_failing_periods_to_trigger_alert":{"type":"number","required":true},"number_of_evaluation_periods":{"type":"number","required":true}}},"optional":true}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_monitor_scheduled_query_rules_log":{"block":{"attributes":{"authorized_resource_ids":{"type":["set","string"],"optional":true},"data_source_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"metric_name":{"type":"string","required":true}},"block_types":{"dimension":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"Include"},"values":{"type":["list","string"],"required":true}}},"required":true}}},"required":true}}}},"azurerm_monitor_smart_detector_alert_rule":{"block":{"attributes":{"description":{"type":"string","optional":true},"detector_type":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"frequency":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scope_resource_ids":{"type":["set","string"],"required":true},"severity":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"throttling_duration":{"type":"string","optional":true}},"block_types":{"action_group":{"nesting_mode":3,"block":{"attributes":{"email_subject":{"type":"string","optional":true},"ids":{"type":["set","string"],"required":true},"webhook_payload":{"type":"string","optional":true}}},"required":true}}}},"azurerm_monitor_workspace":{"block":{"attributes":{"default_data_collection_endpoint_id":{"type":"string","computed":true},"default_data_collection_rule_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"query_endpoint":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_mssql_database":{"block":{"attributes":{"auto_pause_delay_in_minutes":{"type":"number","optional":true,"computed":true},"collation":{"type":"string","optional":true,"computed":true},"create_mode":{"type":"string","optional":true,"default":"Default","conflicts_with":["import"]},"creation_source_database_id":{"type":"string","optional":true,"computed":true},"elastic_pool_id":{"type":"string","optional":true},"enclave_type":{"type":"string","optional":true,"computed":true},"geo_backup_enabled":{"type":"bool","optional":true,"default":true},"ledger_enabled":{"type":"bool","optional":true,"computed":true},"license_type":{"type":"string","optional":true,"computed":true},"maintenance_configuration_name":{"type":"string","optional":true,"computed":true,"conflicts_with":["elastic_pool_id"]},"max_size_gb":{"type":"number","optional":true,"computed":true},"min_capacity":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"read_replica_count":{"type":"number","optional":true,"computed":true},"read_scale":{"type":"bool","optional":true,"computed":true},"recover_database_id":{"type":"string","optional":true},"recovery_point_id":{"type":"string","optional":true},"restore_dropped_database_id":{"type":"string","optional":true},"restore_long_term_retention_backup_id":{"type":"string","optional":true},"restore_point_in_time":{"type":"string","optional":true,"computed":true},"sample_name":{"type":"string","optional":true,"computed":true},"secondary_type":{"type":"string","optional":true,"computed":true},"server_id":{"type":"string","required":true},"sku_name":{"type":"string","optional":true,"computed":true},"storage_account_type":{"type":"string","optional":true,"default":"Geo"},"tags":{"type":["map","string"],"optional":true},"transparent_data_encryption_enabled":{"type":"bool","optional":true,"default":true},"transparent_data_encryption_key_automatic_rotation_enabled":{"type":"bool","optional":true,"default":false,"required_with":["transparent_data_encryption_key_vault_key_id"]},"transparent_data_encryption_key_vault_key_id":{"type":"string","optional":true},"zone_redundant":{"type":"bool","optional":true,"computed":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"import":{"nesting_mode":3,"block":{"attributes":{"administrator_login":{"type":"string","required":true},"administrator_login_password":{"type":"string","required":true},"authentication_type":{"type":"string","required":true},"storage_account_id":{"type":"string","optional":true},"storage_key":{"type":"string","required":true},"storage_key_type":{"type":"string","required":true},"storage_uri":{"type":"string","required":true}}},"optional":true,"conflicts_with":["create_mode"]},"long_term_retention_policy":{"nesting_mode":3,"block":{"attributes":{"immutable_backups_enabled":{"type":"bool","optional":true,"default":false},"monthly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"week_of_year":{"type":"number","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"weekly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"yearly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]}}},"optional":true,"computed":true},"short_term_retention_policy":{"nesting_mode":3,"block":{"attributes":{"backup_interval_in_hours":{"type":"number","optional":true,"computed":true},"retention_days":{"type":"number","required":true}}},"optional":true,"computed":true},"threat_detection_policy":{"nesting_mode":3,"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true},"email_account_admins":{"type":"string","optional":true,"default":"Disabled"},"email_addresses":{"type":["set","string"],"optional":true},"retention_days":{"type":"number","optional":true},"state":{"type":"string","optional":true,"default":"Disabled"},"storage_account_access_key":{"type":"string","optional":true},"storage_endpoint":{"type":"string","optional":true}}},"optional":true,"computed":true}}}},"azurerm_mssql_database_extended_auditing_policy":{"block":{"attributes":{"database_id":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_monitoring_enabled":{"type":"bool","optional":true,"default":true},"retention_in_days":{"type":"number","optional":true,"default":0},"storage_account_access_key":{"type":"string","optional":true},"storage_account_access_key_is_secondary":{"type":"bool","optional":true,"default":false},"storage_endpoint":{"type":"string","optional":true}}}},"azurerm_mssql_database_vulnerability_assessment_rule_baseline":{"block":{"attributes":{"baseline_name":{"type":"string","optional":true,"default":"default"},"database_name":{"type":"string","required":true},"rule_id":{"type":"string","required":true},"server_vulnerability_assessment_id":{"type":"string","required":true}},"block_types":{"baseline_result":{"nesting_mode":4,"block":{"attributes":{"result":{"type":["list","string"],"required":true}}},"required":true}}}},"azurerm_mssql_elasticpool":{"block":{"attributes":{"enclave_type":{"type":"string","optional":true,"computed":true},"license_type":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"maintenance_configuration_name":{"type":"string","optional":true,"default":"SQL_Default"},"max_size_bytes":{"type":"number","optional":true,"computed":true,"conflicts_with":["max_size_gb"]},"max_size_gb":{"type":"number","optional":true,"computed":true,"conflicts_with":["max_size_bytes"]},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone_redundant":{"type":"bool","optional":true}},"block_types":{"per_database_settings":{"nesting_mode":3,"block":{"attributes":{"max_capacity":{"type":"number","required":true},"min_capacity":{"type":"number","required":true}}},"required":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"family":{"type":"string","optional":true},"name":{"type":"string","required":true},"tier":{"type":"string","required":true}}},"required":true}}}},"azurerm_mssql_failover_group":{"block":{"attributes":{"databases":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"readonly_endpoint_failover_policy_enabled":{"type":"bool","optional":true,"computed":true},"server_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"partner_server":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","required":true},"location":{"type":"string","computed":true},"role":{"type":"string","computed":true}}},"required":true},"read_write_endpoint_failover_policy":{"nesting_mode":3,"block":{"attributes":{"grace_minutes":{"type":"number","optional":true},"mode":{"type":"string","required":true}}},"required":true}}}},"azurerm_mssql_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_mssql_job":{"block":{"attributes":{"description":{"type":"string","optional":true},"job_agent_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_mssql_job_agent":{"block":{"attributes":{"database_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"JA100"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_job_credential":{"block":{"attributes":{"job_agent_id":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","optional":true,"conflicts_with":["password_wo"],"exactly_one_of":["password","password_wo"]},"password_wo":{"type":"string","optional":true,"conflicts_with":["password"],"exactly_one_of":["password_wo","password"],"required_with":["password_wo_version"]},"password_wo_version":{"type":"number","optional":true,"required_with":["password_wo"]},"username":{"type":"string","required":true}}}},"azurerm_mssql_job_schedule":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"computed":true},"end_time":{"type":"string","optional":true,"computed":true},"interval":{"type":"string","optional":true},"job_id":{"type":"string","required":true},"start_time":{"type":"string","optional":true,"computed":true},"type":{"type":"string","required":true}}}},"azurerm_mssql_job_step":{"block":{"attributes":{"initial_retry_interval_seconds":{"type":"number","optional":true,"default":1},"job_credential_id":{"type":"string","optional":true},"job_id":{"type":"string","required":true},"job_step_index":{"type":"number","required":true},"job_target_group_id":{"type":"string","required":true},"maximum_retry_interval_seconds":{"type":"number","optional":true,"default":120},"name":{"type":"string","required":true},"retry_attempts":{"type":"number","optional":true,"default":10},"retry_interval_backoff_multiplier":{"type":"number","optional":true,"default":2},"sql_script":{"type":"string","required":true},"timeout_seconds":{"type":"number","optional":true,"default":43200}},"block_types":{"output_target":{"nesting_mode":3,"block":{"attributes":{"job_credential_id":{"type":"string","optional":true},"mssql_database_id":{"type":"string","required":true},"schema_name":{"type":"string","optional":true,"default":"dbo"},"table_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_job_target_group":{"block":{"attributes":{"job_agent_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"job_target":{"nesting_mode":4,"block":{"attributes":{"database_name":{"type":"string","optional":true},"elastic_pool_name":{"type":"string","optional":true},"job_credential_id":{"type":"string","optional":true},"membership_type":{"type":"string","optional":true,"default":"Include"},"server_name":{"type":"string","required":true},"type":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_mssql_managed_database":{"block":{"attributes":{"managed_instance_id":{"type":"string","required":true},"name":{"type":"string","required":true},"short_term_retention_days":{"type":"number","optional":true,"default":7},"tags":{"type":["map","string"],"optional":true}},"block_types":{"long_term_retention_policy":{"nesting_mode":3,"block":{"attributes":{"immutable_backups_enabled":{"type":"bool","optional":true,"default":false},"monthly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"week_of_year":{"type":"number","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"weekly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"yearly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]}}},"optional":true,"computed":true},"point_in_time_restore":{"nesting_mode":3,"block":{"attributes":{"restore_point_in_time":{"type":"string","required":true},"source_database_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_managed_instance":{"block":{"attributes":{"administrator_login":{"type":"string","optional":true,"computed":true,"at_least_one_of":["administrator_login","azure_active_directory_administrator"],"required_with":["administrator_login","administrator_login_password"]},"administrator_login_password":{"type":"string","optional":true,"at_least_one_of":["administrator_login_password","azure_active_directory_administrator"],"required_with":["administrator_login","administrator_login_password"]},"collation":{"type":"string","optional":true,"default":"SQL_Latin1_General_CP1_CI_AS"},"database_format":{"type":"string","optional":true,"default":"SQLServer2022"},"dns_zone":{"type":"string","computed":true},"dns_zone_partner_id":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"hybrid_secondary_usage":{"type":"string","optional":true,"default":"Active"},"license_type":{"type":"string","required":true},"location":{"type":"string","required":true},"maintenance_configuration_name":{"type":"string","optional":true,"default":"SQL_Default"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"proxy_override":{"type":"string","optional":true,"default":"Default"},"public_data_endpoint_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"service_principal_type":{"type":"string","optional":true},"sku_name":{"type":"string","required":true},"storage_account_type":{"type":"string","optional":true,"default":"GRS"},"storage_size_in_gb":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"timezone_id":{"type":"string","optional":true,"default":"UTC"},"vcores":{"type":"number","required":true},"zone_redundant_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"azure_active_directory_administrator":{"nesting_mode":3,"block":{"attributes":{"azuread_authentication_only_enabled":{"type":"bool","optional":true,"default":false},"login_username":{"type":"string","required":true},"object_id":{"type":"string","required":true},"principal_type":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_managed_instance_active_directory_administrator":{"block":{"attributes":{"azuread_authentication_only":{"type":"bool","optional":true},"login_username":{"type":"string","required":true},"managed_instance_id":{"type":"string","required":true},"object_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_mssql_managed_instance_failover_group":{"block":{"attributes":{"location":{"type":"string","required":true},"managed_instance_id":{"type":"string","required":true},"name":{"type":"string","required":true},"partner_managed_instance_id":{"type":"string","required":true},"partner_region":{"type":["list",["object",{"location":"string","role":"string"}]],"computed":true},"readonly_endpoint_failover_policy_enabled":{"type":"bool","optional":true,"default":true},"role":{"type":"string","computed":true},"secondary_type":{"type":"string","optional":true,"default":"Geo"}},"block_types":{"read_write_endpoint_failover_policy":{"nesting_mode":3,"block":{"attributes":{"grace_minutes":{"type":"number","optional":true},"mode":{"type":"string","required":true}}},"required":true}}}},"azurerm_mssql_managed_instance_security_alert_policy":{"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true},"email_account_admins_enabled":{"type":"bool","optional":true,"default":false},"email_addresses":{"type":["set","string"],"optional":true},"enabled":{"type":"bool","optional":true},"managed_instance_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"retention_days":{"type":"number","optional":true,"default":0},"storage_account_access_key":{"type":"string","optional":true},"storage_endpoint":{"type":"string","optional":true}}}},"azurerm_mssql_managed_instance_start_stop_schedule":{"block":{"attributes":{"description":{"type":"string","optional":true},"managed_instance_id":{"type":"string","required":true},"next_execution_time":{"type":"string","computed":true},"next_run_action":{"type":"string","computed":true},"timezone_id":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"start_day":{"type":"string","required":true},"start_time":{"type":"string","required":true},"stop_day":{"type":"string","required":true},"stop_time":{"type":"string","required":true}}},"required":true}}}},"azurerm_mssql_managed_instance_transparent_data_encryption":{"block":{"attributes":{"auto_rotation_enabled":{"type":"bool","optional":true,"default":false},"key_vault_key_id":{"type":"string","optional":true,"conflicts_with":["managed_hsm_key_id"]},"managed_hsm_key_id":{"type":"string","optional":true,"conflicts_with":["key_vault_key_id"]},"managed_instance_id":{"type":"string","required":true}}}},"azurerm_mssql_managed_instance_vulnerability_assessment":{"block":{"attributes":{"managed_instance_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_container_path":{"type":"string","required":true},"storage_container_sas_key":{"type":"string","optional":true}},"block_types":{"recurring_scans":{"nesting_mode":3,"block":{"attributes":{"email_subscription_admins":{"type":"bool","optional":true,"default":true},"emails":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_mssql_outbound_firewall_rule":{"block":{"attributes":{"name":{"type":"string","required":true},"server_id":{"type":"string","required":true}}}},"azurerm_mssql_server":{"block":{"attributes":{"administrator_login":{"type":"string","optional":true,"computed":true,"at_least_one_of":["administrator_login","azuread_administrator.0.azuread_authentication_only"]},"administrator_login_password":{"type":"string","optional":true,"conflicts_with":["administrator_login_password_wo"],"at_least_one_of":["administrator_login_password","administrator_login_password_wo","azuread_administrator.0.azuread_authentication_only"]},"administrator_login_password_wo":{"type":"string","optional":true,"conflicts_with":["administrator_login_password"],"at_least_one_of":["administrator_login_password_wo","administrator_login_password","azuread_administrator.0.azuread_authentication_only"],"required_with":["administrator_login_password_wo_version"]},"administrator_login_password_wo_version":{"type":"number","optional":true,"required_with":["administrator_login_password_wo"]},"connection_policy":{"type":"string","optional":true,"default":"Default"},"express_vulnerability_assessment_enabled":{"type":"bool","optional":true,"default":false},"fully_qualified_domain_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"outbound_network_restriction_enabled":{"type":"bool","optional":true,"default":false},"primary_user_assigned_identity_id":{"type":"string","optional":true,"computed":true,"required_with":["identity"]},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"restorable_dropped_database_ids":{"type":["list","string"],"computed":true},"tags":{"type":["map","string"],"optional":true},"transparent_data_encryption_key_vault_key_id":{"type":"string","optional":true},"version":{"type":"string","required":true}},"block_types":{"azuread_administrator":{"nesting_mode":3,"block":{"attributes":{"azuread_authentication_only":{"type":"bool","optional":true,"computed":true},"login_username":{"type":"string","required":true},"object_id":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_server_dns_alias":{"block":{"attributes":{"dns_record":{"type":"string","computed":true},"mssql_server_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_mssql_server_extended_auditing_policy":{"block":{"attributes":{"audit_actions_and_groups":{"type":["list","string"],"optional":true,"computed":true},"enabled":{"type":"bool","optional":true,"default":true},"log_monitoring_enabled":{"type":"bool","optional":true,"default":true},"predicate_expression":{"type":"string","optional":true},"retention_in_days":{"type":"number","optional":true,"default":0},"server_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_account_access_key_is_secondary":{"type":"bool","optional":true,"default":false},"storage_account_subscription_id":{"type":"string","optional":true},"storage_endpoint":{"type":"string","optional":true}}}},"azurerm_mssql_server_microsoft_support_auditing_policy":{"block":{"attributes":{"blob_storage_endpoint":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"log_monitoring_enabled":{"type":"bool","optional":true,"default":true},"server_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_account_subscription_id":{"type":"string","optional":true}}}},"azurerm_mssql_server_security_alert_policy":{"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true},"email_account_admins":{"type":"bool","optional":true,"default":false},"email_addresses":{"type":["set","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"retention_days":{"type":"number","optional":true,"default":0},"server_name":{"type":"string","required":true},"state":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true,"required_with":["storage_endpoint"]},"storage_endpoint":{"type":"string","optional":true,"required_with":["storage_account_access_key"]}}}},"azurerm_mssql_server_transparent_data_encryption":{"block":{"attributes":{"auto_rotation_enabled":{"type":"bool","optional":true,"default":false},"key_vault_key_id":{"type":"string","optional":true,"conflicts_with":["managed_hsm_key_id"]},"managed_hsm_key_id":{"type":"string","optional":true,"conflicts_with":["key_vault_key_id"]},"server_id":{"type":"string","required":true}}}},"azurerm_mssql_server_vulnerability_assessment":{"block":{"attributes":{"server_security_alert_policy_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_container_path":{"type":"string","required":true},"storage_container_sas_key":{"type":"string","optional":true}},"block_types":{"recurring_scans":{"nesting_mode":3,"block":{"attributes":{"email_subscription_admins":{"type":"bool","optional":true,"default":false},"emails":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_mssql_virtual_machine":{"block":{"attributes":{"r_services_enabled":{"type":"bool","optional":true},"sql_connectivity_port":{"type":"number","optional":true,"default":1433},"sql_connectivity_type":{"type":"string","optional":true,"default":"PRIVATE"},"sql_connectivity_update_password":{"type":"string","optional":true},"sql_connectivity_update_username":{"type":"string","optional":true},"sql_license_type":{"type":"string","optional":true},"sql_virtual_machine_group_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"assessment":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"run_immediately":{"type":"bool","optional":true,"default":false}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"string","required":true},"monthly_occurrence":{"type":"number","optional":true,"exactly_one_of":["assessment.0.schedule.0.weekly_interval"]},"start_time":{"type":"string","required":true},"weekly_interval":{"type":"number","optional":true,"exactly_one_of":["assessment.0.schedule.0.monthly_occurrence"]}}},"optional":true}}},"optional":true},"auto_backup":{"nesting_mode":3,"block":{"attributes":{"encryption_enabled":{"type":"bool","optional":true,"computed":true},"encryption_password":{"type":"string","optional":true},"retention_period_in_days":{"type":"number","required":true},"storage_account_access_key":{"type":"string","required":true},"storage_blob_endpoint":{"type":"string","required":true},"system_databases_backup_enabled":{"type":"bool","optional":true}},"block_types":{"manual_schedule":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["set","string"],"optional":true},"full_backup_frequency":{"type":"string","required":true},"full_backup_start_hour":{"type":"number","required":true},"full_backup_window_in_hours":{"type":"number","required":true},"log_backup_frequency_in_minutes":{"type":"number","required":true}}},"optional":true}}},"optional":true},"auto_patching":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"string","required":true},"maintenance_window_duration_in_minutes":{"type":"number","required":true},"maintenance_window_starting_hour":{"type":"number","required":true}}},"optional":true},"key_vault_credential":{"nesting_mode":3,"block":{"attributes":{"key_vault_url":{"type":"string","required":true},"name":{"type":"string","required":true},"service_principal_name":{"type":"string","required":true},"service_principal_secret":{"type":"string","required":true}}},"optional":true},"sql_instance":{"nesting_mode":3,"block":{"attributes":{"adhoc_workloads_optimization_enabled":{"type":"bool","optional":true,"default":false},"collation":{"type":"string","optional":true,"default":"SQL_Latin1_General_CP1_CI_AS"},"instant_file_initialization_enabled":{"type":"bool","optional":true,"default":false},"lock_pages_in_memory_enabled":{"type":"bool","optional":true,"default":false},"max_dop":{"type":"number","optional":true,"default":0},"max_server_memory_mb":{"type":"number","optional":true,"default":2147483647},"min_server_memory_mb":{"type":"number","optional":true,"default":0}}},"optional":true},"storage_configuration":{"nesting_mode":3,"block":{"attributes":{"disk_type":{"type":"string","required":true},"storage_workload_type":{"type":"string","required":true},"system_db_on_data_disk_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"data_settings":{"nesting_mode":3,"block":{"attributes":{"default_file_path":{"type":"string","required":true},"luns":{"type":["list","number"],"required":true}}},"optional":true},"log_settings":{"nesting_mode":3,"block":{"attributes":{"default_file_path":{"type":"string","required":true},"luns":{"type":["list","number"],"required":true}}},"optional":true},"temp_db_settings":{"nesting_mode":3,"block":{"attributes":{"data_file_count":{"type":"number","optional":true,"default":8},"data_file_growth_in_mb":{"type":"number","optional":true,"default":512},"data_file_size_mb":{"type":"number","optional":true,"default":256},"default_file_path":{"type":"string","required":true},"log_file_growth_mb":{"type":"number","optional":true,"default":512},"log_file_size_mb":{"type":"number","optional":true,"default":256},"luns":{"type":["list","number"],"required":true}}},"optional":true}}},"optional":true},"wsfc_domain_credential":{"nesting_mode":3,"block":{"attributes":{"cluster_bootstrap_account_password":{"type":"string","required":true},"cluster_operator_account_password":{"type":"string","required":true},"sql_service_account_password":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_virtual_machine_availability_group_listener":{"block":{"attributes":{"availability_group_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"port":{"type":"number","optional":true},"sql_virtual_machine_group_id":{"type":"string","required":true}},"block_types":{"load_balancer_configuration":{"nesting_mode":3,"block":{"attributes":{"load_balancer_id":{"type":"string","required":true},"private_ip_address":{"type":"string","required":true},"probe_port":{"type":"number","required":true},"sql_virtual_machine_ids":{"type":["set","string"],"required":true},"subnet_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["load_balancer_configuration","multi_subnet_ip_configuration"]},"multi_subnet_ip_configuration":{"nesting_mode":4,"block":{"attributes":{"private_ip_address":{"type":"string","required":true},"sql_virtual_machine_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["load_balancer_configuration","multi_subnet_ip_configuration"]},"replica":{"nesting_mode":4,"block":{"attributes":{"commit":{"type":"string","required":true},"failover_mode":{"type":"string","required":true},"readable_secondary":{"type":"string","required":true},"role":{"type":"string","required":true},"sql_virtual_machine_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_mssql_virtual_machine_group":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sql_image_offer":{"type":"string","required":true},"sql_image_sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"wsfc_domain_profile":{"nesting_mode":3,"block":{"attributes":{"cluster_bootstrap_account_name":{"type":"string","optional":true},"cluster_operator_account_name":{"type":"string","optional":true},"cluster_subnet_type":{"type":"string","required":true},"fqdn":{"type":"string","required":true},"organizational_unit_path":{"type":"string","optional":true},"sql_service_account_name":{"type":"string","optional":true},"storage_account_primary_key":{"type":"string","optional":true},"storage_account_url":{"type":"string","optional":true}}},"required":true}}}},"azurerm_mssql_virtual_network_rule":{"block":{"attributes":{"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_mysql_flexible_database":{"block":{"attributes":{"charset":{"type":"string","required":true},"collation":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true}}}},"azurerm_mysql_flexible_server":{"block":{"attributes":{"administrator_login":{"type":"string","optional":true,"computed":true},"administrator_password":{"type":"string","optional":true,"conflicts_with":["administrator_password_wo"]},"administrator_password_wo":{"type":"string","optional":true,"conflicts_with":["administrator_password"],"required_with":["administrator_password_wo_version"]},"administrator_password_wo_version":{"type":"number","optional":true,"required_with":["administrator_password_wo"]},"backup_retention_days":{"type":"number","optional":true,"default":7},"create_mode":{"type":"string","optional":true},"delegated_subnet_id":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"geo_redundant_backup_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"point_in_time_restore_time_in_utc":{"type":"string","optional":true},"private_dns_zone_id":{"type":"string","optional":true},"public_network_access":{"type":"string","optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","computed":true},"replica_capacity":{"type":"number","computed":true},"replication_role":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","optional":true,"computed":true},"source_server_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true,"computed":true},"zone":{"type":"string","optional":true,"computed":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"geo_backup_key_vault_key_id":{"type":"string","optional":true,"required_with":["identity","customer_managed_key.0.geo_backup_user_assigned_identity_id"]},"geo_backup_user_assigned_identity_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","optional":true,"required_with":["identity","customer_managed_key.0.primary_user_assigned_identity_id"]},"primary_user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"high_availability":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"standby_availability_zone":{"type":"string","optional":true,"computed":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"maintenance_window":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"number","optional":true,"default":0},"start_hour":{"type":"number","optional":true,"default":0},"start_minute":{"type":"number","optional":true,"default":0}}},"optional":true},"storage":{"nesting_mode":3,"block":{"attributes":{"auto_grow_enabled":{"type":"bool","optional":true,"default":true},"io_scaling_enabled":{"type":"bool","optional":true,"default":false},"iops":{"type":"number","optional":true,"computed":true},"log_on_disk_enabled":{"type":"bool","optional":true,"default":false},"size_gb":{"type":"number","optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_mysql_flexible_server_active_directory_administrator":{"block":{"attributes":{"identity_id":{"type":"string","required":true},"login":{"type":"string","required":true},"object_id":{"type":"string","required":true},"server_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_mysql_flexible_server_configuration":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_mysql_flexible_server_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_nat_gateway":{"block":{"attributes":{"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_guid":{"type":"string","computed":true},"sku_name":{"type":"string","optional":true,"default":"Standard"},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_nat_gateway_public_ip_association":{"block":{"attributes":{"nat_gateway_id":{"type":"string","required":true},"public_ip_address_id":{"type":"string","required":true}}}},"azurerm_nat_gateway_public_ip_prefix_association":{"block":{"attributes":{"nat_gateway_id":{"type":"string","required":true},"public_ip_prefix_id":{"type":"string","required":true}}}},"azurerm_netapp_account":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"aes_encryption_enabled":{"type":"bool","optional":true,"default":false},"dns_servers":{"type":["list","string"],"required":true},"domain":{"type":"string","required":true},"kerberos_ad_name":{"type":"string","optional":true},"kerberos_kdc_ip":{"type":"string","optional":true},"ldap_over_tls_enabled":{"type":"bool","optional":true,"default":false,"required_with":["active_directory.0.server_root_ca_certificate"]},"ldap_signing_enabled":{"type":"bool","optional":true,"default":false},"local_nfs_users_with_ldap_allowed":{"type":"bool","optional":true,"default":false},"organizational_unit":{"type":"string","optional":true,"default":"CN=Computers"},"password":{"type":"string","required":true},"server_root_ca_certificate":{"type":"string","optional":true,"required_with":["active_directory.0.ldap_over_tls_enabled"]},"site_name":{"type":"string","optional":true,"default":"Default-First-Site-Name"},"smb_server_name":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_netapp_account_encryption":{"block":{"attributes":{"cross_tenant_key_vault_resource_id":{"type":"string","optional":true,"required_with":["federated_client_id"]},"encryption_key":{"type":"string","required":true},"federated_client_id":{"type":"string","optional":true,"required_with":["cross_tenant_key_vault_resource_id"]},"netapp_account_id":{"type":"string","required":true},"system_assigned_identity_principal_id":{"type":"string","optional":true,"conflicts_with":["user_assigned_identity_id"]},"user_assigned_identity_id":{"type":"string","optional":true,"conflicts_with":["system_assigned_identity_principal_id"]}}}},"azurerm_netapp_backup_policy":{"block":{"attributes":{"account_name":{"type":"string","required":true},"daily_backups_to_keep":{"type":"number","optional":true,"default":2},"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"monthly_backups_to_keep":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"weekly_backups_to_keep":{"type":"number","optional":true,"default":1}}}},"azurerm_netapp_backup_vault":{"block":{"attributes":{"account_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_netapp_pool":{"block":{"attributes":{"account_name":{"type":"string","required":true},"cool_access_enabled":{"type":"bool","optional":true,"default":false},"custom_throughput_mibps":{"type":"number","optional":true},"encryption_type":{"type":"string","optional":true,"default":"Single"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"qos_type":{"type":"string","optional":true,"default":"Auto"},"resource_group_name":{"type":"string","required":true},"service_level":{"type":"string","required":true},"size_in_tb":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_netapp_snapshot":{"block":{"attributes":{"account_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"pool_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"volume_name":{"type":"string","required":true}}}},"azurerm_netapp_snapshot_policy":{"block":{"attributes":{"account_name":{"type":"string","required":true},"enabled":{"type":"bool","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"daily_schedule":{"nesting_mode":3,"block":{"attributes":{"hour":{"type":"number","required":true},"minute":{"type":"number","required":true},"snapshots_to_keep":{"type":"number","required":true}}},"optional":true},"hourly_schedule":{"nesting_mode":3,"block":{"attributes":{"minute":{"type":"number","required":true},"snapshots_to_keep":{"type":"number","required":true}}},"optional":true},"monthly_schedule":{"nesting_mode":3,"block":{"attributes":{"days_of_month":{"type":["set","number"],"required":true},"hour":{"type":"number","required":true},"minute":{"type":"number","required":true},"snapshots_to_keep":{"type":"number","required":true}}},"optional":true},"weekly_schedule":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["set","string"],"required":true},"hour":{"type":"number","required":true},"minute":{"type":"number","required":true},"snapshots_to_keep":{"type":"number","required":true}}},"optional":true}}}},"azurerm_netapp_volume":{"block":{"attributes":{"accept_grow_capacity_pool_for_short_term_clone_split":{"type":"string","optional":true},"account_name":{"type":"string","required":true},"azure_vmware_data_store_enabled":{"type":"bool","optional":true,"default":false},"create_from_snapshot_resource_id":{"type":"string","optional":true},"encryption_key_source":{"type":"string","optional":true,"computed":true},"kerberos_enabled":{"type":"bool","optional":true},"key_vault_private_endpoint_id":{"type":"string","optional":true,"computed":true,"required_with":["encryption_key_source"]},"large_volume_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"mount_ip_addresses":{"type":["list","string"],"computed":true},"name":{"type":"string","required":true},"network_features":{"type":"string","optional":true,"computed":true},"pool_name":{"type":"string","required":true},"protocols":{"type":["set","string"],"optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"security_style":{"type":"string","optional":true,"computed":true},"service_level":{"type":"string","required":true},"smb3_protocol_encryption_enabled":{"type":"bool","optional":true},"smb_access_based_enumeration_enabled":{"type":"bool","optional":true,"default":false},"smb_continuous_availability_enabled":{"type":"bool","optional":true},"smb_non_browsable_enabled":{"type":"bool","optional":true,"default":false},"snapshot_directory_visible":{"type":"bool","optional":true,"default":true},"storage_quota_in_gb":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"throughput_in_mibps":{"type":"number","optional":true,"computed":true},"volume_path":{"type":"string","required":true},"zone":{"type":"string","optional":true}},"block_types":{"cool_access":{"nesting_mode":3,"block":{"attributes":{"coolness_period_in_days":{"type":"number","required":true},"retrieval_policy":{"type":"string","required":true},"tiering_policy":{"type":"string","required":true}}},"optional":true},"data_protection_backup_policy":{"nesting_mode":3,"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"backup_vault_id":{"type":"string","required":true},"policy_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true},"data_protection_replication":{"nesting_mode":3,"block":{"attributes":{"endpoint_type":{"type":"string","optional":true,"default":"dst"},"remote_volume_location":{"type":"string","required":true},"remote_volume_resource_id":{"type":"string","required":true},"replication_frequency":{"type":"string","required":true}}},"optional":true},"data_protection_snapshot_policy":{"nesting_mode":3,"block":{"attributes":{"snapshot_policy_id":{"type":"string","required":true}}},"optional":true},"export_policy_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_clients":{"type":["set","string"],"required":true},"kerberos_5_read_only_enabled":{"type":"bool","optional":true},"kerberos_5_read_write_enabled":{"type":"bool","optional":true},"kerberos_5i_read_only_enabled":{"type":"bool","optional":true},"kerberos_5i_read_write_enabled":{"type":"bool","optional":true},"kerberos_5p_read_only_enabled":{"type":"bool","optional":true},"kerberos_5p_read_write_enabled":{"type":"bool","optional":true},"protocol":{"type":["list","string"],"optional":true,"computed":true},"protocols_enabled":{"type":["list","string"],"optional":true,"computed":true},"root_access_enabled":{"type":"bool","optional":true},"rule_index":{"type":"number","required":true},"unix_read_only":{"type":"bool","optional":true},"unix_read_write":{"type":"bool","optional":true}}},"optional":true}}}},"azurerm_netapp_volume_group_oracle":{"block":{"attributes":{"account_name":{"type":"string","required":true},"application_identifier":{"type":"string","required":true},"group_description":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"volume":{"nesting_mode":3,"block":{"attributes":{"capacity_pool_id":{"type":"string","required":true},"encryption_key_source":{"type":"string","optional":true,"computed":true},"id":{"type":"string","computed":true},"key_vault_private_endpoint_id":{"type":"string","optional":true,"computed":true},"mount_ip_addresses":{"type":["list","string"],"computed":true},"name":{"type":"string","required":true},"network_features":{"type":"string","optional":true,"computed":true},"protocols":{"type":["list","string"],"required":true},"proximity_placement_group_id":{"type":"string","optional":true},"security_style":{"type":"string","required":true},"service_level":{"type":"string","required":true},"snapshot_directory_visible":{"type":"bool","required":true},"storage_quota_in_gb":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"throughput_in_mibps":{"type":"number","required":true},"volume_path":{"type":"string","required":true},"volume_spec_name":{"type":"string","required":true},"zone":{"type":"string","optional":true}},"block_types":{"data_protection_replication":{"nesting_mode":3,"block":{"attributes":{"endpoint_type":{"type":"string","optional":true,"default":"dst"},"remote_volume_location":{"type":"string","required":true},"remote_volume_resource_id":{"type":"string","required":true},"replication_frequency":{"type":"string","required":true}}},"optional":true},"data_protection_snapshot_policy":{"nesting_mode":3,"block":{"attributes":{"snapshot_policy_id":{"type":"string","required":true}}},"optional":true,"computed":true},"export_policy_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_clients":{"type":"string","required":true},"nfsv3_enabled":{"type":"bool","required":true},"nfsv41_enabled":{"type":"bool","required":true},"root_access_enabled":{"type":"bool","optional":true,"default":true},"rule_index":{"type":"number","required":true},"unix_read_only":{"type":"bool","optional":true,"default":false},"unix_read_write":{"type":"bool","optional":true,"default":true}}},"required":true}}},"required":true}}}},"azurerm_netapp_volume_group_sap_hana":{"block":{"attributes":{"account_name":{"type":"string","required":true},"application_identifier":{"type":"string","required":true},"group_description":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"volume":{"nesting_mode":3,"block":{"attributes":{"capacity_pool_id":{"type":"string","required":true},"id":{"type":"string","computed":true},"mount_ip_addresses":{"type":["list","string"],"computed":true},"name":{"type":"string","required":true},"protocols":{"type":["list","string"],"required":true},"proximity_placement_group_id":{"type":"string","optional":true},"security_style":{"type":"string","required":true},"service_level":{"type":"string","required":true},"snapshot_directory_visible":{"type":"bool","required":true},"storage_quota_in_gb":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"throughput_in_mibps":{"type":"number","required":true},"volume_path":{"type":"string","required":true},"volume_spec_name":{"type":"string","required":true}},"block_types":{"data_protection_replication":{"nesting_mode":3,"block":{"attributes":{"endpoint_type":{"type":"string","optional":true,"default":"dst"},"remote_volume_location":{"type":"string","required":true},"remote_volume_resource_id":{"type":"string","required":true},"replication_frequency":{"type":"string","required":true}}},"optional":true},"data_protection_snapshot_policy":{"nesting_mode":3,"block":{"attributes":{"snapshot_policy_id":{"type":"string","required":true}}},"optional":true,"computed":true},"export_policy_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_clients":{"type":"string","required":true},"nfsv3_enabled":{"type":"bool","required":true},"nfsv41_enabled":{"type":"bool","required":true},"root_access_enabled":{"type":"bool","optional":true,"default":true},"rule_index":{"type":"number","required":true},"unix_read_only":{"type":"bool","optional":true,"default":false},"unix_read_write":{"type":"bool","optional":true,"default":true}}},"required":true}}},"required":true}}}},"azurerm_netapp_volume_quota_rule":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"quota_size_in_kib":{"type":"number","required":true},"quota_target":{"type":"string","optional":true},"quota_type":{"type":"string","required":true},"volume_id":{"type":"string","required":true}}}},"azurerm_network_connection_monitor":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_watcher_id":{"type":"string","required":true},"notes":{"type":"string","optional":true},"output_workspace_resource_ids":{"type":["set","string"],"optional":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"endpoint":{"nesting_mode":4,"block":{"attributes":{"address":{"type":"string","optional":true},"coverage_level":{"type":"string","optional":true},"excluded_ip_addresses":{"type":["set","string"],"optional":true},"included_ip_addresses":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"target_resource_id":{"type":"string","optional":true},"target_resource_type":{"type":"string","optional":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","optional":true,"default":"Include"}},"block_types":{"item":{"nesting_mode":4,"block":{"attributes":{"address":{"type":"string","optional":true},"type":{"type":"string","optional":true,"default":"AgentAddress"}}},"optional":true}}},"optional":true}}},"required":true},"test_configuration":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"preferred_ip_version":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"test_frequency_in_seconds":{"type":"number","optional":true,"default":60}},"block_types":{"http_configuration":{"nesting_mode":3,"block":{"attributes":{"method":{"type":"string","optional":true,"default":"Get"},"path":{"type":"string","optional":true},"port":{"type":"number","optional":true},"prefer_https":{"type":"bool","optional":true,"default":false},"valid_status_code_ranges":{"type":["set","string"],"optional":true}},"block_types":{"request_header":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"icmp_configuration":{"nesting_mode":3,"block":{"attributes":{"trace_route_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true},"success_threshold":{"nesting_mode":3,"block":{"attributes":{"checks_failed_percent":{"type":"number","optional":true},"round_trip_time_ms":{"type":"number","optional":true}}},"optional":true},"tcp_configuration":{"nesting_mode":3,"block":{"attributes":{"destination_port_behavior":{"type":"string","optional":true},"port":{"type":"number","required":true},"trace_route_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}},"required":true},"test_group":{"nesting_mode":4,"block":{"attributes":{"destination_endpoints":{"type":["set","string"],"required":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"source_endpoints":{"type":["set","string"],"required":true},"test_configuration_names":{"type":["set","string"],"required":true}}},"required":true}}}},"azurerm_network_ddos_protection_plan":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_ids":{"type":["list","string"],"computed":true}}}},"azurerm_network_function_azure_traffic_collector":{"block":{"attributes":{"collector_policy_ids":{"type":["list","string"],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_hub_id":{"type":["list","string"],"computed":true}}}},"azurerm_network_function_collector_policy":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"traffic_collector_id":{"type":"string","required":true}},"block_types":{"ipfx_emission":{"nesting_mode":3,"block":{"attributes":{"destination_types":{"type":["list","string"],"required":true}}},"required":true},"ipfx_ingestion":{"nesting_mode":3,"block":{"attributes":{"source_resource_ids":{"type":["set","string"],"required":true}}},"required":true}}}},"azurerm_network_interface":{"block":{"attributes":{"accelerated_networking_enabled":{"type":"bool","optional":true,"default":false},"applied_dns_servers":{"type":["list","string"],"computed":true},"auxiliary_mode":{"type":"string","optional":true,"required_with":["auxiliary_sku"]},"auxiliary_sku":{"type":"string","optional":true,"required_with":["auxiliary_mode"]},"dns_servers":{"type":["list","string"],"optional":true},"edge_zone":{"type":"string","optional":true},"internal_dns_name_label":{"type":"string","optional":true},"internal_domain_name_suffix":{"type":"string","computed":true},"ip_forwarding_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"mac_address":{"type":"string","computed":true},"name":{"type":"string","required":true},"private_ip_address":{"type":"string","computed":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_machine_id":{"type":"string","computed":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"gateway_load_balancer_frontend_ip_configuration_id":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true,"computed":true},"private_ip_address":{"type":"string","optional":true,"computed":true},"private_ip_address_allocation":{"type":"string","required":true},"private_ip_address_version":{"type":"string","optional":true,"default":"IPv4"},"public_ip_address_id":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}}},"azurerm_network_interface_application_gateway_backend_address_pool_association":{"block":{"attributes":{"backend_address_pool_id":{"type":"string","required":true},"ip_configuration_name":{"type":"string","required":true},"network_interface_id":{"type":"string","required":true}}}},"azurerm_network_interface_application_security_group_association":{"block":{"attributes":{"application_security_group_id":{"type":"string","required":true},"network_interface_id":{"type":"string","required":true}}}},"azurerm_network_interface_backend_address_pool_association":{"block":{"attributes":{"backend_address_pool_id":{"type":"string","required":true},"ip_configuration_name":{"type":"string","required":true},"network_interface_id":{"type":"string","required":true}}}},"azurerm_network_interface_nat_rule_association":{"block":{"attributes":{"ip_configuration_name":{"type":"string","required":true},"nat_rule_id":{"type":"string","required":true},"network_interface_id":{"type":"string","required":true}}}},"azurerm_network_interface_security_group_association":{"block":{"attributes":{"network_interface_id":{"type":"string","required":true},"network_security_group_id":{"type":"string","required":true}}}},"azurerm_network_manager":{"block":{"attributes":{"cross_tenant_scopes":{"type":["list",["object",{"management_groups":["list","string"],"subscriptions":["list","string"],"tenant_id":"string"}]],"computed":true},"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scope_accesses":{"type":["list","string"],"optional":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"scope":{"nesting_mode":3,"block":{"attributes":{"management_group_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["scope.0.management_group_ids","scope.0.subscription_ids"]},"subscription_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["scope.0.management_group_ids","scope.0.subscription_ids"]}}},"required":true}}}},"azurerm_network_manager_admin_rule":{"block":{"attributes":{"action":{"type":"string","required":true},"admin_rule_collection_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"destination_port_ranges":{"type":["list","string"],"optional":true},"direction":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true},"protocol":{"type":"string","required":true},"source_port_ranges":{"type":["list","string"],"optional":true}},"block_types":{"destination":{"nesting_mode":3,"block":{"attributes":{"address_prefix":{"type":"string","required":true},"address_prefix_type":{"type":"string","required":true}}},"optional":true},"source":{"nesting_mode":3,"block":{"attributes":{"address_prefix":{"type":"string","required":true},"address_prefix_type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_network_manager_admin_rule_collection":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_group_ids":{"type":["list","string"],"required":true},"security_admin_configuration_id":{"type":"string","required":true}}}},"azurerm_network_manager_connectivity_configuration":{"block":{"attributes":{"connectivity_topology":{"type":"string","required":true},"delete_existing_peering_enabled":{"type":"bool","optional":true},"description":{"type":"string","optional":true},"global_mesh_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true}},"block_types":{"applies_to_group":{"nesting_mode":3,"block":{"attributes":{"global_mesh_enabled":{"type":"bool","optional":true},"group_connectivity":{"type":"string","required":true},"network_group_id":{"type":"string","required":true},"use_hub_gateway":{"type":"bool","optional":true}}},"required":true},"hub":{"nesting_mode":3,"block":{"attributes":{"resource_id":{"type":"string","required":true},"resource_type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_network_manager_deployment":{"block":{"attributes":{"configuration_ids":{"type":["list","string"],"required":true},"location":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true},"scope_access":{"type":"string","required":true},"triggers":{"type":["map","string"],"optional":true}}}},"azurerm_network_manager_ipam_pool":{"block":{"attributes":{"address_prefixes":{"type":["list","string"],"required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true},"parent_pool_name":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_network_manager_ipam_pool_static_cidr":{"block":{"attributes":{"address_prefixes":{"type":["list","string"],"optional":true,"exactly_one_of":["address_prefixes","number_of_ip_addresses_to_allocate"]},"ipam_pool_id":{"type":"string","required":true},"name":{"type":"string","required":true},"number_of_ip_addresses_to_allocate":{"type":"string","optional":true,"exactly_one_of":["address_prefixes","number_of_ip_addresses_to_allocate"]}}}},"azurerm_network_manager_management_group_connection":{"block":{"attributes":{"connection_state":{"type":"string","computed":true},"description":{"type":"string","optional":true},"management_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true}}}},"azurerm_network_manager_network_group":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true}}}},"azurerm_network_manager_routing_configuration":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true}}}},"azurerm_network_manager_routing_rule_collection":{"block":{"attributes":{"bgp_route_propagation_enabled":{"type":"bool","optional":true,"default":false},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_group_ids":{"type":["list","string"],"required":true},"routing_configuration_id":{"type":"string","required":true}}}},"azurerm_network_manager_scope_connection":{"block":{"attributes":{"connection_state":{"type":"string","computed":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true},"target_scope_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_network_manager_security_admin_configuration":{"block":{"attributes":{"apply_on_network_intent_policy_based_services":{"type":["list","string"],"optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true}}}},"azurerm_network_manager_static_member":{"block":{"attributes":{"name":{"type":"string","required":true},"network_group_id":{"type":"string","required":true},"region":{"type":"string","computed":true},"target_virtual_network_id":{"type":"string","required":true}}}},"azurerm_network_manager_subscription_connection":{"block":{"attributes":{"connection_state":{"type":"string","computed":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}}}},"azurerm_network_manager_verifier_workspace":{"block":{"attributes":{"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_network_manager_verifier_workspace_reachability_analysis_intent":{"block":{"attributes":{"description":{"type":"string","optional":true},"destination_resource_id":{"type":"string","required":true},"name":{"type":"string","required":true},"source_resource_id":{"type":"string","required":true},"verifier_workspace_id":{"type":"string","required":true}},"block_types":{"ip_traffic":{"nesting_mode":3,"block":{"attributes":{"destination_ips":{"type":["list","string"],"required":true},"destination_ports":{"type":["list","string"],"required":true},"protocols":{"type":["list","string"],"required":true},"source_ips":{"type":["list","string"],"required":true},"source_ports":{"type":["list","string"],"required":true}}},"required":true}}}},"azurerm_network_packet_capture":{"block":{"attributes":{"maximum_bytes_per_packet":{"type":"number","optional":true,"default":0},"maximum_bytes_per_session":{"type":"number","optional":true,"default":1073741824},"maximum_capture_duration":{"type":"number","optional":true,"default":18000},"name":{"type":"string","required":true},"network_watcher_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"local_ip_address":{"type":"string","optional":true},"local_port":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"remote_ip_address":{"type":"string","optional":true},"remote_port":{"type":"string","optional":true}}},"optional":true},"storage_location":{"nesting_mode":3,"block":{"attributes":{"file_path":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_account_id":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_path":{"type":"string","computed":true}}},"required":true}}}},"azurerm_network_profile":{"block":{"attributes":{"container_network_interface_ids":{"type":["list","string"],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"container_network_interface":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_network_security_group":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"security_rule":{"type":["set",["object",{"access":"string","description":"string","destination_address_prefix":"string","destination_address_prefixes":["set","string"],"destination_application_security_group_ids":["set","string"],"destination_port_range":"string","destination_port_ranges":["set","string"],"direction":"string","name":"string","priority":"number","protocol":"string","source_address_prefix":"string","source_address_prefixes":["set","string"],"source_application_security_group_ids":["set","string"],"source_port_range":"string","source_port_ranges":["set","string"]}]],"optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_network_security_rule":{"block":{"attributes":{"access":{"type":"string","required":true},"description":{"type":"string","optional":true},"destination_address_prefix":{"type":"string","optional":true,"exactly_one_of":["destination_address_prefix","destination_address_prefixes","destination_application_security_group_ids"]},"destination_address_prefixes":{"type":["set","string"],"optional":true,"exactly_one_of":["destination_address_prefix","destination_address_prefixes","destination_application_security_group_ids"]},"destination_application_security_group_ids":{"type":["set","string"],"optional":true,"exactly_one_of":["destination_address_prefix","destination_address_prefixes","destination_application_security_group_ids"]},"destination_port_range":{"type":"string","optional":true,"conflicts_with":["destination_port_ranges"]},"destination_port_ranges":{"type":["set","string"],"optional":true,"conflicts_with":["destination_port_range"]},"direction":{"type":"string","required":true},"name":{"type":"string","required":true},"network_security_group_name":{"type":"string","required":true},"priority":{"type":"number","required":true},"protocol":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_address_prefix":{"type":"string","optional":true,"exactly_one_of":["source_address_prefix","source_address_prefixes","source_application_security_group_ids"]},"source_address_prefixes":{"type":["set","string"],"optional":true,"exactly_one_of":["source_address_prefix","source_address_prefixes","source_application_security_group_ids"]},"source_application_security_group_ids":{"type":["set","string"],"optional":true,"exactly_one_of":["source_address_prefix","source_address_prefixes","source_application_security_group_ids"]},"source_port_range":{"type":"string","optional":true,"conflicts_with":["source_port_ranges"]},"source_port_ranges":{"type":["set","string"],"optional":true,"conflicts_with":["source_port_range"]}}}},"azurerm_network_watcher":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_network_watcher_flow_log":{"block":{"attributes":{"enabled":{"type":"bool","required":true},"location":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"network_security_group_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["network_security_group_id","target_resource_id"]},"network_watcher_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_resource_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["network_security_group_id","target_resource_id"]},"version":{"type":"number","optional":true,"default":1}},"block_types":{"retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","required":true},"enabled":{"type":"bool","required":true}}},"required":true},"traffic_analytics":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"interval_in_minutes":{"type":"number","optional":true,"default":60},"workspace_id":{"type":"string","required":true},"workspace_region":{"type":"string","required":true},"workspace_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_new_relic_monitor":{"block":{"attributes":{"account_creation_source":{"type":"string","optional":true,"default":"LIFTR"},"account_id":{"type":"string","optional":true,"computed":true},"ingestion_key":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"org_creation_source":{"type":"string","optional":true,"default":"LIFTR"},"organization_id":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"user_id":{"type":"string","optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"plan":{"nesting_mode":3,"block":{"attributes":{"billing_cycle":{"type":"string","optional":true,"default":"MONTHLY"},"effective_date":{"type":"string","required":true},"plan_id":{"type":"string","optional":true,"default":"newrelic-pay-as-you-go-free-live"},"usage_type":{"type":"string","optional":true,"default":"PAYG"}}},"required":true},"user":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","required":true},"first_name":{"type":"string","required":true},"last_name":{"type":"string","required":true},"phone_number":{"type":"string","required":true}}},"required":true}}}},"azurerm_new_relic_tag_rule":{"block":{"attributes":{"activity_log_enabled":{"type":"bool","optional":true,"default":false},"azure_active_directory_log_enabled":{"type":"bool","optional":true,"default":false},"metric_enabled":{"type":"bool","optional":true,"default":false},"monitor_id":{"type":"string","required":true},"subscription_log_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"log_tag_filter":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"metric_tag_filter":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}}},"azurerm_nginx_api_key":{"block":{"attributes":{"end_date_time":{"type":"string","required":true},"hint":{"type":"string","computed":true},"name":{"type":"string","required":true},"nginx_deployment_id":{"type":"string","required":true},"secret_text":{"type":"string","required":true}}}},"azurerm_nginx_certificate":{"block":{"attributes":{"certificate_virtual_path":{"type":"string","required":true},"key_vault_secret_id":{"type":"string","required":true},"key_virtual_path":{"type":"string","required":true},"name":{"type":"string","required":true},"nginx_deployment_id":{"type":"string","required":true}}}},"azurerm_nginx_configuration":{"block":{"attributes":{"nginx_deployment_id":{"type":"string","required":true},"package_data":{"type":"string","optional":true,"conflicts_with":["protected_file","config_file"],"at_least_one_of":["config_file","package_data"]},"root_file":{"type":"string","required":true}},"block_types":{"config_file":{"nesting_mode":4,"block":{"attributes":{"content":{"type":"string","required":true},"virtual_path":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["config_file","package_data"]},"protected_file":{"nesting_mode":4,"block":{"attributes":{"content":{"type":"string","required":true},"content_hash":{"type":"string","computed":true},"virtual_path":{"type":"string","required":true}}},"optional":true,"required_with":["config_file"]}}}},"azurerm_nginx_deployment":{"block":{"attributes":{"automatic_upgrade_channel":{"type":"string","optional":true,"default":"stable"},"capacity":{"type":"number","optional":true,"conflicts_with":["auto_scale_profile"]},"dataplane_api_endpoint":{"type":"string","computed":true},"diagnose_support_enabled":{"type":"bool","optional":true},"email":{"type":"string","optional":true},"ip_address":{"type":"string","computed":true},"location":{"type":"string","required":true},"managed_resource_group":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"nginx_version":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"auto_scale_profile":{"nesting_mode":3,"block":{"attributes":{"max_capacity":{"type":"number","required":true},"min_capacity":{"type":"number","required":true},"name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["capacity"]},"frontend_private":{"nesting_mode":3,"block":{"attributes":{"allocation_method":{"type":"string","required":true},"ip_address":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["frontend_public"]},"frontend_public":{"nesting_mode":3,"block":{"attributes":{"ip_address":{"type":["list","string"],"optional":true}}},"optional":true,"conflicts_with":["frontend_private"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logging_storage_account":{"nesting_mode":3,"block":{"attributes":{"container_name":{"type":"string","optional":true},"name":{"type":"string","optional":true}}},"optional":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"subnet_id":{"type":"string","required":true}}},"optional":true},"web_application_firewall":{"nesting_mode":3,"block":{"attributes":{"activation_state_enabled":{"type":"bool","required":true},"status":{"type":["list",["object",{"attack_signatures_package":["list",["object",{"revision_datetime":"string","version":"string"}]],"bot_signatures_package":["list",["object",{"revision_datetime":"string","version":"string"}]],"component_versions":["list",["object",{"waf_engine_version":"string","waf_nginx_version":"string"}]],"threat_campaigns_package":["list",["object",{"revision_datetime":"string","version":"string"}]]}]],"computed":true}}},"optional":true}}}},"azurerm_notification_hub":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"apns_credential":{"nesting_mode":3,"block":{"attributes":{"application_mode":{"type":"string","required":true},"bundle_id":{"type":"string","required":true},"key_id":{"type":"string","required":true},"team_id":{"type":"string","required":true},"token":{"type":"string","required":true}}},"optional":true},"browser_credential":{"nesting_mode":3,"block":{"attributes":{"subject":{"type":"string","required":true},"vapid_private_key":{"type":"string","required":true},"vapid_public_key":{"type":"string","required":true}}},"optional":true},"gcm_credential":{"nesting_mode":3,"block":{"attributes":{"api_key":{"type":"string","required":true}}},"optional":true}}}},"azurerm_notification_hub_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"notification_hub_name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_notification_hub_namespace":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"servicebus_endpoint":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_oracle_autonomous_database":{"block":{"attributes":{"admin_password":{"type":"string","required":true},"allowed_ips":{"type":["set","string"],"optional":true},"auto_scaling_enabled":{"type":"bool","required":true},"auto_scaling_for_storage_enabled":{"type":"bool","required":true},"backup_retention_period_in_days":{"type":"number","required":true},"character_set":{"type":"string","required":true},"compute_count":{"type":"number","required":true},"compute_model":{"type":"string","required":true},"customer_contacts":{"type":["list","string"],"optional":true,"computed":true},"data_storage_size_in_tbs":{"type":"number","required":true},"db_version":{"type":"string","required":true},"db_workload":{"type":"string","required":true},"display_name":{"type":"string","required":true},"license_model":{"type":"string","required":true},"location":{"type":"string","required":true},"mtls_connection_required":{"type":"bool","required":true},"name":{"type":"string","required":true},"national_character_set":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subnet_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_id":{"type":"string","optional":true}},"block_types":{"long_term_backup_schedule":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"repeat_cadence":{"type":"string","required":true},"retention_period_in_days":{"type":"number","required":true},"time_of_backup":{"type":"string","required":true}}},"optional":true}}}},"azurerm_oracle_autonomous_database_backup":{"block":{"attributes":{"autonomous_database_id":{"type":"string","required":true},"name":{"type":"string","required":true},"retention_period_in_days":{"type":"number","required":true},"type":{"type":"string","optional":true,"default":"LongTerm"}}}},"azurerm_oracle_cloud_vm_cluster":{"block":{"attributes":{"backup_subnet_cidr":{"type":"string","optional":true},"cloud_exadata_infrastructure_id":{"type":"string","required":true},"cluster_name":{"type":"string","optional":true,"computed":true},"cpu_core_count":{"type":"number","required":true},"data_storage_percentage":{"type":"number","optional":true,"computed":true},"data_storage_size_in_tbs":{"type":"number","optional":true,"computed":true},"db_node_storage_size_in_gbs":{"type":"number","optional":true,"computed":true},"db_servers":{"type":["list","string"],"required":true},"display_name":{"type":"string","required":true},"domain":{"type":"string","optional":true,"computed":true},"gi_version":{"type":"string","required":true},"hostname":{"type":"string","required":true},"hostname_actual":{"type":"string","computed":true},"license_model":{"type":"string","required":true},"local_backup_enabled":{"type":"bool","optional":true,"computed":true},"location":{"type":"string","required":true},"memory_size_in_gbs":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"ocid":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"scan_listener_port_tcp":{"type":"number","optional":true,"default":1521},"scan_listener_port_tcp_ssl":{"type":"number","optional":true,"default":2484},"sparse_diskgroup_enabled":{"type":"bool","optional":true,"computed":true},"ssh_public_keys":{"type":["list","string"],"required":true},"subnet_id":{"type":"string","required":true},"system_version":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"time_zone":{"type":"string","optional":true,"computed":true},"virtual_network_id":{"type":"string","required":true},"zone_id":{"type":"string","optional":true,"computed":true}},"block_types":{"data_collection_options":{"nesting_mode":3,"block":{"attributes":{"diagnostics_events_enabled":{"type":"bool","optional":true,"computed":true},"health_monitoring_enabled":{"type":"bool","optional":true,"computed":true},"incident_logs_enabled":{"type":"bool","optional":true,"computed":true}}},"optional":true,"computed":true},"file_system_configuration":{"nesting_mode":3,"block":{"attributes":{"mount_point":{"type":"string","optional":true},"size_in_gb":{"type":"number","optional":true}}},"optional":true}}}},"azurerm_oracle_exadata_infrastructure":{"block":{"attributes":{"compute_count":{"type":"number","required":true},"customer_contacts":{"type":["list","string"],"optional":true,"computed":true},"database_server_type":{"type":"string","optional":true,"computed":true},"display_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"shape":{"type":"string","required":true},"storage_count":{"type":"number","required":true},"storage_server_type":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"required":true}},"block_types":{"maintenance_window":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["list","string"],"optional":true,"computed":true},"hours_of_day":{"type":["list","number"],"optional":true,"computed":true},"lead_time_in_weeks":{"type":"number","optional":true,"computed":true},"months":{"type":["list","string"],"optional":true,"computed":true},"patching_mode":{"type":"string","optional":true,"computed":true},"preference":{"type":"string","optional":true,"computed":true},"weeks_of_month":{"type":["list","number"],"optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_orbital_contact":{"block":{"attributes":{"contact_profile_id":{"type":"string","required":true},"ground_station_name":{"type":"string","required":true},"name":{"type":"string","required":true},"reservation_end_time":{"type":"string","required":true},"reservation_start_time":{"type":"string","required":true},"spacecraft_id":{"type":"string","required":true}}}},"azurerm_orbital_contact_profile":{"block":{"attributes":{"auto_tracking":{"type":"string","required":true},"event_hub_uri":{"type":"string","optional":true},"location":{"type":"string","required":true},"minimum_elevation_degrees":{"type":"number","optional":true},"minimum_variable_contact_duration":{"type":"string","required":true},"name":{"type":"string","required":true},"network_configuration_subnet_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"links":{"nesting_mode":3,"block":{"attributes":{"direction":{"type":"string","required":true},"name":{"type":"string","required":true},"polarization":{"type":"string","required":true}},"block_types":{"channels":{"nesting_mode":3,"block":{"attributes":{"bandwidth_mhz":{"type":"number","required":true},"center_frequency_mhz":{"type":"number","required":true},"demodulation_configuration":{"type":"string","optional":true},"modulation_configuration":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"end_point":{"nesting_mode":4,"block":{"attributes":{"end_point_name":{"type":"string","required":true},"ip_address":{"type":"string","optional":true},"port":{"type":"string","required":true},"protocol":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true}}}},"azurerm_orbital_spacecraft":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"norad_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"title_line":{"type":"string","required":true},"two_line_elements":{"type":["list","string"],"required":true}},"block_types":{"links":{"nesting_mode":3,"block":{"attributes":{"bandwidth_mhz":{"type":"number","required":true},"center_frequency_mhz":{"type":"number","required":true},"direction":{"type":"string","required":true},"name":{"type":"string","required":true},"polarization":{"type":"string","required":true}}},"required":true}}}},"azurerm_orchestrated_virtual_machine_scale_set":{"block":{"attributes":{"capacity_reservation_group_id":{"type":"string","optional":true,"conflicts_with":["proximity_placement_group_id"]},"encryption_at_host_enabled":{"type":"bool","optional":true},"eviction_policy":{"type":"string","optional":true},"extension_operations_enabled":{"type":"bool","optional":true,"default":true},"extensions_time_budget":{"type":"string","optional":true,"default":"PT1H30M"},"instances":{"type":"number","optional":true,"computed":true},"license_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"max_bid_price":{"type":"number","optional":true,"default":-1},"name":{"type":"string","required":true},"network_api_version":{"type":"string","optional":true,"default":"2020-11-01"},"platform_fault_domain_count":{"type":"number","required":true},"priority":{"type":"string","optional":true,"default":"Regular"},"proximity_placement_group_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id"]},"resource_group_name":{"type":"string","required":true},"single_placement_group":{"type":"bool","optional":true,"computed":true},"sku_name":{"type":"string","optional":true},"source_image_id":{"type":"string","optional":true,"conflicts_with":["source_image_reference"]},"tags":{"type":["map","string"],"optional":true},"unique_id":{"type":"string","computed":true},"upgrade_mode":{"type":"string","optional":true,"default":"Manual"},"user_data_base64":{"type":"string","optional":true},"zone_balance":{"type":"bool","optional":true,"default":false},"zones":{"type":["set","string"],"optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"automatic_instance_repair":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"grace_period":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"storage_account_uri":{"type":"string","optional":true}}},"optional":true},"data_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"create_option":{"type":"string","optional":true,"default":"Empty"},"disk_encryption_set_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"lun":{"type":"number","optional":true,"computed":true},"storage_account_type":{"type":"string","required":true},"ultra_ssd_disk_iops_read_write":{"type":"number","optional":true,"computed":true},"ultra_ssd_disk_mbps_read_write":{"type":"number","optional":true,"computed":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"extension":{"nesting_mode":4,"block":{"attributes":{"auto_upgrade_minor_version_enabled":{"type":"bool","optional":true,"default":true},"extensions_to_provision_after_vm_creation":{"type":["list","string"],"optional":true},"failure_suppression_enabled":{"type":"bool","optional":true,"default":false},"force_extension_execution_on_change":{"type":"string","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true}},"block_types":{"protected_settings_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"auxiliary_mode":{"type":"string","optional":true},"auxiliary_sku":{"type":"string","optional":true},"dns_servers":{"type":["list","string"],"optional":true},"enable_accelerated_networking":{"type":"bool","optional":true,"default":false},"enable_ip_forwarding":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"network_security_group_id":{"type":"string","optional":true},"primary":{"type":"bool","optional":true,"default":false}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"application_gateway_backend_address_pool_ids":{"type":["set","string"],"optional":true},"application_security_group_ids":{"type":["set","string"],"optional":true},"load_balancer_backend_address_pool_ids":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"public_ip_address":{"nesting_mode":3,"block":{"attributes":{"domain_name_label":{"type":"string","optional":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"public_ip_prefix_id":{"type":"string","optional":true},"sku_name":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"ip_tag":{"nesting_mode":3,"block":{"attributes":{"tag":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"required":true}}},"optional":true},"os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"disk_encryption_set_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"storage_account_type":{"type":"string","required":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"diff_disk_settings":{"nesting_mode":3,"block":{"attributes":{"option":{"type":"string","required":true},"placement":{"type":"string","optional":true,"default":"CacheDisk"}}},"optional":true}}},"optional":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"custom_data":{"type":"string","optional":true}},"block_types":{"linux_configuration":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","optional":true},"admin_username":{"type":"string","required":true},"computer_name_prefix":{"type":"string","optional":true,"computed":true},"disable_password_authentication":{"type":"bool","optional":true,"default":true},"patch_assessment_mode":{"type":"string","optional":true,"default":"ImageDefault"},"patch_mode":{"type":"string","optional":true,"default":"ImageDefault"},"provision_vm_agent":{"type":"bool","optional":true,"default":true}},"block_types":{"admin_ssh_key":{"nesting_mode":4,"block":{"attributes":{"public_key":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"url":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true},"windows_configuration":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","required":true},"admin_username":{"type":"string","required":true},"computer_name_prefix":{"type":"string","optional":true,"computed":true},"enable_automatic_updates":{"type":"bool","optional":true,"default":true},"hotpatching_enabled":{"type":"bool","optional":true,"default":false},"patch_assessment_mode":{"type":"string","optional":true,"default":"ImageDefault"},"patch_mode":{"type":"string","optional":true,"default":"AutomaticByOS"},"provision_vm_agent":{"type":"bool","optional":true,"default":true},"timezone":{"type":"string","optional":true}},"block_types":{"additional_unattend_content":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"setting":{"type":"string","required":true}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"store":{"type":"string","required":true},"url":{"type":"string","required":true}}},"required":true}}},"optional":true},"winrm_listener":{"nesting_mode":4,"block":{"attributes":{"certificate_url":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"priority_mix":{"nesting_mode":3,"block":{"attributes":{"base_regular_count":{"type":"number","optional":true,"default":0},"regular_percentage_above_base":{"type":"number","optional":true,"default":0}}},"optional":true},"rolling_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"cross_zone_upgrades_enabled":{"type":"bool","optional":true},"max_batch_instance_percent":{"type":"number","required":true},"max_unhealthy_instance_percent":{"type":"number","required":true},"max_unhealthy_upgraded_instance_percent":{"type":"number","required":true},"maximum_surge_instances_enabled":{"type":"bool","optional":true},"pause_time_between_batches":{"type":"string","required":true},"prioritize_unhealthy_instances_enabled":{"type":"bool","optional":true}}},"optional":true},"sku_profile":{"nesting_mode":3,"block":{"attributes":{"allocation_strategy":{"type":"string","required":true},"vm_sizes":{"type":["set","string"],"required":true}}},"optional":true},"source_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true,"conflicts_with":["source_image_id"]},"termination_notification":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"timeout":{"type":"string","optional":true,"default":"PT5M"}}},"optional":true,"computed":true}}}},"azurerm_palo_alto_local_rulestack":{"block":{"attributes":{"anti_spyware_profile":{"type":"string","optional":true},"anti_virus_profile":{"type":"string","optional":true},"description":{"type":"string","optional":true},"dns_subscription":{"type":"string","optional":true},"file_blocking_profile":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"url_filtering_profile":{"type":"string","optional":true},"vulnerability_profile":{"type":"string","optional":true}}}},"azurerm_palo_alto_local_rulestack_certificate":{"block":{"attributes":{"audit_comment":{"type":"string","optional":true},"description":{"type":"string","optional":true},"key_vault_certificate_id":{"type":"string","optional":true,"exactly_one_of":["self_signed","key_vault_certificate_id"]},"name":{"type":"string","required":true},"rulestack_id":{"type":"string","required":true},"self_signed":{"type":"bool","optional":true,"default":false,"exactly_one_of":["key_vault_certificate_id","self_signed"]}}}},"azurerm_palo_alto_local_rulestack_fqdn_list":{"block":{"attributes":{"audit_comment":{"type":"string","optional":true},"description":{"type":"string","optional":true},"fully_qualified_domain_names":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"rulestack_id":{"type":"string","required":true}}}},"azurerm_palo_alto_local_rulestack_outbound_trust_certificate_association":{"block":{"attributes":{"certificate_id":{"type":"string","required":true}}}},"azurerm_palo_alto_local_rulestack_outbound_untrust_certificate_association":{"block":{"attributes":{"certificate_id":{"type":"string","required":true}}}},"azurerm_palo_alto_local_rulestack_prefix_list":{"block":{"attributes":{"audit_comment":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"prefix_list":{"type":["list","string"],"required":true},"rulestack_id":{"type":"string","required":true}}}},"azurerm_palo_alto_local_rulestack_rule":{"block":{"attributes":{"action":{"type":"string","required":true},"applications":{"type":["list","string"],"required":true},"audit_comment":{"type":"string","optional":true},"decryption_rule_type":{"type":"string","optional":true,"default":"None"},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"inspection_certificate_id":{"type":"string","optional":true},"logging_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"negate_destination":{"type":"bool","optional":true,"default":false},"negate_source":{"type":"bool","optional":true,"default":false},"priority":{"type":"number","required":true},"protocol":{"type":"string","optional":true,"exactly_one_of":["protocol","protocol_ports"]},"protocol_ports":{"type":["list","string"],"optional":true,"exactly_one_of":["protocol","protocol_ports"]},"rulestack_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"category":{"nesting_mode":3,"block":{"attributes":{"custom_urls":{"type":["list","string"],"required":true},"feeds":{"type":["list","string"],"optional":true}}},"optional":true},"destination":{"nesting_mode":3,"block":{"attributes":{"cidrs":{"type":["list","string"],"optional":true,"at_least_one_of":["destination.0.cidrs","destination.0.countries","destination.0.feeds","destination.0.local_rulestack_fqdn_list_ids","destination.0.local_rulestack_prefix_list_ids"]},"countries":{"type":["list","string"],"optional":true,"at_least_one_of":["destination.0.cidrs","destination.0.countries","destination.0.feeds","destination.0.local_rulestack_fqdn_list_ids","destination.0.local_rulestack_prefix_list_ids"]},"feeds":{"type":["list","string"],"optional":true,"at_least_one_of":["destination.0.cidrs","destination.0.countries","destination.0.feeds","destination.0.local_rulestack_fqdn_list_ids","destination.0.local_rulestack_prefix_list_ids"]},"local_rulestack_fqdn_list_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["destination.0.cidrs","destination.0.countries","destination.0.feeds","destination.0.local_rulestack_fqdn_list_ids","destination.0.local_rulestack_prefix_list_ids"]},"local_rulestack_prefix_list_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["destination.0.cidrs","destination.0.countries","destination.0.feeds","destination.0.local_rulestack_fqdn_list_ids","destination.0.local_rulestack_prefix_list_ids"]}}},"required":true},"source":{"nesting_mode":3,"block":{"attributes":{"cidrs":{"type":["list","string"],"optional":true,"at_least_one_of":["source.0.cidrs","source.0.countries","source.0.feeds","source.0.local_rulestack_prefix_list_ids"]},"countries":{"type":["list","string"],"optional":true,"at_least_one_of":["source.0.cidrs","source.0.countries","source.0.feeds","source.0.local_rulestack_prefix_list_ids"]},"feeds":{"type":["list","string"],"optional":true,"at_least_one_of":["source.0.cidrs","source.0.countries","source.0.feeds","source.0.local_rulestack_prefix_list_ids"]},"local_rulestack_prefix_list_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["source.0.cidrs","source.0.countries","source.0.feeds","source.0.local_rulestack_prefix_list_ids"]}}},"required":true}}}},"azurerm_palo_alto_next_generation_firewall_virtual_hub_local_rulestack":{"block":{"attributes":{"marketplace_offer_id":{"type":"string","optional":true,"default":"pan_swfw_cloud_ngfw"},"name":{"type":"string","required":true},"plan_id":{"type":"string","optional":true,"default":"panw-cloud-ngfw-payg"},"resource_group_name":{"type":"string","required":true},"rulestack_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"destination_nat":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"protocol":{"type":"string","required":true}},"block_types":{"backend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address":{"type":"string","required":true}}},"optional":true},"frontend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"dns_settings":{"nesting_mode":3,"block":{"attributes":{"azure_dns_servers":{"type":["list","string"],"computed":true},"dns_servers":{"type":["list","string"],"optional":true,"conflicts_with":["dns_settings.0.use_azure_dns"]},"use_azure_dns":{"type":"bool","optional":true,"default":false,"conflicts_with":["dns_settings.0.dns_servers"]}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"egress_nat_ip_address_ids":{"type":["list","string"],"optional":true},"egress_nat_ip_addresses":{"type":["list","string"],"computed":true},"ip_of_trust_for_user_defined_routes":{"type":"string","computed":true},"network_virtual_appliance_id":{"type":"string","required":true},"public_ip_address_ids":{"type":["list","string"],"required":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"trusted_address_ranges":{"type":["list","string"],"optional":true},"trusted_subnet_id":{"type":"string","computed":true},"untrusted_subnet_id":{"type":"string","computed":true},"virtual_hub_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_palo_alto_next_generation_firewall_virtual_hub_panorama":{"block":{"attributes":{"location":{"type":"string","required":true},"marketplace_offer_id":{"type":"string","optional":true,"default":"pan_swfw_cloud_ngfw"},"name":{"type":"string","required":true},"panorama":{"type":["list",["object",{"device_group_name":"string","host_name":"string","name":"string","panorama_server_1":"string","panorama_server_2":"string","template_name":"string","virtual_machine_ssh_key":"string"}]],"computed":true},"panorama_base64_config":{"type":"string","required":true},"plan_id":{"type":"string","optional":true,"default":"panw-cloud-ngfw-payg"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"destination_nat":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"protocol":{"type":"string","required":true}},"block_types":{"backend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address":{"type":"string","required":true}}},"optional":true},"frontend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"dns_settings":{"nesting_mode":3,"block":{"attributes":{"azure_dns_servers":{"type":["list","string"],"computed":true},"dns_servers":{"type":["list","string"],"optional":true,"conflicts_with":["dns_settings.0.use_azure_dns"]},"use_azure_dns":{"type":"bool","optional":true,"default":false,"conflicts_with":["dns_settings.0.dns_servers"]}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"egress_nat_ip_address_ids":{"type":["list","string"],"optional":true},"egress_nat_ip_addresses":{"type":["list","string"],"computed":true},"ip_of_trust_for_user_defined_routes":{"type":"string","computed":true},"network_virtual_appliance_id":{"type":"string","required":true},"public_ip_address_ids":{"type":["list","string"],"required":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"trusted_address_ranges":{"type":["list","string"],"optional":true},"trusted_subnet_id":{"type":"string","computed":true},"untrusted_subnet_id":{"type":"string","computed":true},"virtual_hub_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_palo_alto_next_generation_firewall_virtual_network_local_rulestack":{"block":{"attributes":{"marketplace_offer_id":{"type":"string","optional":true,"default":"pan_swfw_cloud_ngfw"},"name":{"type":"string","required":true},"plan_id":{"type":"string","optional":true,"default":"panw-cloud-ngfw-payg"},"resource_group_name":{"type":"string","required":true},"rulestack_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"destination_nat":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"protocol":{"type":"string","required":true}},"block_types":{"backend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address":{"type":"string","required":true}}},"optional":true},"frontend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"dns_settings":{"nesting_mode":3,"block":{"attributes":{"azure_dns_servers":{"type":["list","string"],"computed":true},"dns_servers":{"type":["list","string"],"optional":true,"conflicts_with":["dns_settings.0.use_azure_dns"]},"use_azure_dns":{"type":"bool","optional":true,"default":false,"conflicts_with":["dns_settings.0.dns_servers"]}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"egress_nat_ip_address_ids":{"type":["list","string"],"optional":true},"egress_nat_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_address_ids":{"type":["list","string"],"required":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"trusted_address_ranges":{"type":["list","string"],"optional":true}},"block_types":{"vnet_configuration":{"nesting_mode":3,"block":{"attributes":{"ip_of_trust_for_user_defined_routes":{"type":"string","computed":true},"trusted_subnet_id":{"type":"string","optional":true},"untrusted_subnet_id":{"type":"string","optional":true},"virtual_network_id":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_palo_alto_next_generation_firewall_virtual_network_panorama":{"block":{"attributes":{"location":{"type":"string","required":true},"marketplace_offer_id":{"type":"string","optional":true,"default":"pan_swfw_cloud_ngfw"},"name":{"type":"string","required":true},"panorama":{"type":["list",["object",{"device_group_name":"string","host_name":"string","name":"string","panorama_server_1":"string","panorama_server_2":"string","template_name":"string","virtual_machine_ssh_key":"string"}]],"computed":true},"panorama_base64_config":{"type":"string","required":true},"plan_id":{"type":"string","optional":true,"default":"panw-cloud-ngfw-payg"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"destination_nat":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"protocol":{"type":"string","required":true}},"block_types":{"backend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address":{"type":"string","required":true}}},"optional":true},"frontend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"dns_settings":{"nesting_mode":3,"block":{"attributes":{"azure_dns_servers":{"type":["list","string"],"computed":true},"dns_servers":{"type":["list","string"],"optional":true,"conflicts_with":["dns_settings.0.use_azure_dns"]},"use_azure_dns":{"type":"bool","optional":true,"default":false,"conflicts_with":["dns_settings.0.dns_servers"]}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"egress_nat_ip_address_ids":{"type":["list","string"],"optional":true},"egress_nat_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_address_ids":{"type":["list","string"],"required":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"trusted_address_ranges":{"type":["list","string"],"optional":true}},"block_types":{"vnet_configuration":{"nesting_mode":3,"block":{"attributes":{"ip_of_trust_for_user_defined_routes":{"type":"string","computed":true},"trusted_subnet_id":{"type":"string","optional":true},"untrusted_subnet_id":{"type":"string","optional":true},"virtual_network_id":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_palo_alto_virtual_network_appliance":{"block":{"attributes":{"name":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}}}},"azurerm_pim_active_role_assignment":{"block":{"attributes":{"justification":{"type":"string","optional":true,"computed":true},"principal_id":{"type":"string","required":true},"principal_type":{"type":"string","computed":true},"role_definition_id":{"type":"string","required":true},"scope":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"start_date_time":{"type":"string","optional":true,"computed":true}},"block_types":{"expiration":{"nesting_mode":3,"block":{"attributes":{"duration_days":{"type":"number","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_hours","schedule.0.expiration.0.end_date_time"]},"duration_hours":{"type":"number","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_days","schedule.0.expiration.0.end_date_time"]},"end_date_time":{"type":"string","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_days","schedule.0.expiration.0.duration_hours"]}}},"optional":true}}},"optional":true,"computed":true},"ticket":{"nesting_mode":3,"block":{"attributes":{"number":{"type":"string","optional":true},"system":{"type":"string","optional":true}}},"optional":true,"computed":true}}}},"azurerm_pim_eligible_role_assignment":{"block":{"attributes":{"condition":{"type":"string","optional":true,"required_with":["condition_version"]},"condition_version":{"type":"string","optional":true,"required_with":["condition"]},"justification":{"type":"string","optional":true,"computed":true},"principal_id":{"type":"string","required":true},"principal_type":{"type":"string","computed":true},"role_definition_id":{"type":"string","required":true},"scope":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"start_date_time":{"type":"string","optional":true,"computed":true}},"block_types":{"expiration":{"nesting_mode":3,"block":{"attributes":{"duration_days":{"type":"number","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_hours","schedule.0.expiration.0.end_date_time"]},"duration_hours":{"type":"number","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_days","schedule.0.expiration.0.end_date_time"]},"end_date_time":{"type":"string","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_days","schedule.0.expiration.0.duration_hours"]}}},"optional":true}}},"optional":true,"computed":true},"ticket":{"nesting_mode":3,"block":{"attributes":{"number":{"type":"string","optional":true},"system":{"type":"string","optional":true}}},"optional":true,"computed":true}}}},"azurerm_point_to_site_vpn_gateway":{"block":{"attributes":{"dns_servers":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"routing_preference_internet_enabled":{"type":"bool","optional":true,"default":false},"scale_unit":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_hub_id":{"type":"string","required":true},"vpn_server_configuration_id":{"type":"string","required":true}},"block_types":{"connection_configuration":{"nesting_mode":3,"block":{"attributes":{"internet_security_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true}},"block_types":{"route":{"nesting_mode":3,"block":{"attributes":{"associated_route_table_id":{"type":"string","required":true},"inbound_route_map_id":{"type":"string","optional":true},"outbound_route_map_id":{"type":"string","optional":true}},"block_types":{"propagated_route_table":{"nesting_mode":3,"block":{"attributes":{"ids":{"type":["list","string"],"required":true},"labels":{"type":["set","string"],"optional":true}}},"optional":true}}},"optional":true,"computed":true},"vpn_client_address_pool":{"nesting_mode":3,"block":{"attributes":{"address_prefixes":{"type":["set","string"],"required":true}}},"required":true}}},"required":true}}}},"azurerm_policy_definition":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"management_group_id":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"mode":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"policy_rule":{"type":"string","optional":true},"policy_type":{"type":"string","required":true},"role_definition_ids":{"type":["list","string"],"computed":true}}}},"azurerm_policy_set_definition":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"management_group_id":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"policy_type":{"type":"string","required":true}},"block_types":{"policy_definition_group":{"nesting_mode":4,"block":{"attributes":{"additional_metadata_resource_id":{"type":"string","optional":true},"category":{"type":"string","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"name":{"type":"string","required":true}}},"optional":true},"policy_definition_reference":{"nesting_mode":3,"block":{"attributes":{"parameter_values":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true},"policy_group_names":{"type":["set","string"],"optional":true},"reference_id":{"type":"string","optional":true,"computed":true},"version":{"type":"string","optional":true,"computed":true}}},"required":true}}}},"azurerm_policy_virtual_machine_configuration_assignment":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"configuration":{"nesting_mode":3,"block":{"attributes":{"assignment_type":{"type":"string","optional":true},"content_hash":{"type":"string","optional":true,"computed":true},"content_uri":{"type":"string","optional":true,"computed":true},"version":{"type":"string","optional":true}},"block_types":{"parameter":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_portal_dashboard":{"block":{"attributes":{"dashboard_properties":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_portal_tenant_configuration":{"block":{"attributes":{"private_markdown_storage_enforced":{"type":"bool","required":true}}}},"azurerm_postgresql_active_directory_administrator":{"block":{"attributes":{"login":{"type":"string","required":true},"object_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_postgresql_configuration":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_postgresql_database":{"block":{"attributes":{"charset":{"type":"string","required":true},"collation":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true}}}},"azurerm_postgresql_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server":{"block":{"attributes":{"administrator_login":{"type":"string","optional":true,"computed":true},"administrator_password":{"type":"string","optional":true,"conflicts_with":["administrator_password_wo"]},"administrator_password_wo":{"type":"string","optional":true,"conflicts_with":["administrator_password"],"required_with":["administrator_password_wo_version"]},"administrator_password_wo_version":{"type":"number","optional":true,"required_with":["administrator_password_wo"]},"auto_grow_enabled":{"type":"bool","optional":true,"default":false},"backup_retention_days":{"type":"number","optional":true,"computed":true},"create_mode":{"type":"string","optional":true},"delegated_subnet_id":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"geo_redundant_backup_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"point_in_time_restore_time_in_utc":{"type":"string","optional":true},"private_dns_zone_id":{"type":"string","optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"replication_role":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","optional":true,"computed":true},"source_server_id":{"type":"string","optional":true},"storage_mb":{"type":"number","optional":true,"computed":true},"storage_tier":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true,"computed":true},"zone":{"type":"string","optional":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"active_directory_auth_enabled":{"type":"bool","optional":true,"default":false},"password_auth_enabled":{"type":"bool","optional":true,"default":true},"tenant_id":{"type":"string","optional":true,"required_with":["authentication.0.active_directory_auth_enabled"]}}},"optional":true,"computed":true},"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"geo_backup_key_vault_key_id":{"type":"string","optional":true,"required_with":["identity","customer_managed_key.0.geo_backup_user_assigned_identity_id"]},"geo_backup_user_assigned_identity_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","required":true,"required_with":["identity","customer_managed_key.0.primary_user_assigned_identity_id"]},"primary_user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"high_availability":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"standby_availability_zone":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"maintenance_window":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"number","optional":true,"default":0},"start_hour":{"type":"number","optional":true,"default":0},"start_minute":{"type":"number","optional":true,"default":0}}},"optional":true}}}},"azurerm_postgresql_flexible_server_active_directory_administrator":{"block":{"attributes":{"object_id":{"type":"string","required":true},"principal_name":{"type":"string","required":true},"principal_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server_backup":{"block":{"attributes":{"completed_time":{"type":"string","computed":true},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server_configuration":{"block":{"attributes":{"name":{"type":"string","required":true},"server_id":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server_database":{"block":{"attributes":{"charset":{"type":"string","optional":true,"default":"UTF8"},"collation":{"type":"string","optional":true,"default":"en_US.utf8"},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server_virtual_endpoint":{"block":{"attributes":{"name":{"type":"string","required":true},"replica_server_id":{"type":"string","required":true},"source_server_id":{"type":"string","required":true},"type":{"type":"string","required":true}}}},"azurerm_postgresql_server":{"block":{"attributes":{"administrator_login":{"type":"string","optional":true,"computed":true},"administrator_login_password":{"type":"string","optional":true,"conflicts_with":["administrator_login_password_wo"]},"administrator_login_password_wo":{"type":"string","optional":true,"conflicts_with":["administrator_login_password"],"required_with":["administrator_login_password_wo_version"]},"administrator_login_password_wo_version":{"type":"number","optional":true,"required_with":["administrator_login_password_wo"]},"auto_grow_enabled":{"type":"bool","optional":true,"default":true},"backup_retention_days":{"type":"number","optional":true,"computed":true},"create_mode":{"type":"string","optional":true,"default":"Default"},"creation_source_server_id":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"geo_redundant_backup_enabled":{"type":"bool","optional":true,"default":false},"infrastructure_encryption_enabled":{"type":"bool","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"restore_point_in_time":{"type":"string","optional":true},"sku_name":{"type":"string","required":true},"ssl_enforcement_enabled":{"type":"bool","required":true},"ssl_minimal_tls_version_enforced":{"type":"string","optional":true,"default":"TLS1_2"},"storage_mb":{"type":"number","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"threat_detection_policy":{"nesting_mode":3,"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"email_account_admins":{"type":"bool","optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"email_addresses":{"type":["set","string"],"optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"enabled":{"type":"bool","optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"retention_days":{"type":"number","optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"storage_account_access_key":{"type":"string","optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"storage_endpoint":{"type":"string","optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]}}},"optional":true}}}},"azurerm_postgresql_server_key":{"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"server_id":{"type":"string","required":true}}}},"azurerm_postgresql_virtual_network_rule":{"block":{"attributes":{"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_powerbi_embedded":{"block":{"attributes":{"administrators":{"type":["set","string"],"required":true},"location":{"type":"string","required":true},"mode":{"type":"string","optional":true,"default":"Gen1"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_private_dns_a_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_private_dns_aaaa_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_private_dns_cname_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"record":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_private_dns_mx_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","optional":true,"default":"@"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"exchange":{"type":"string","required":true},"preference":{"type":"number","required":true}}},"required":true}}}},"azurerm_private_dns_ptr_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_private_dns_resolver":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_id":{"type":"string","required":true}}}},"azurerm_private_dns_resolver_dns_forwarding_ruleset":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_dns_resolver_outbound_endpoint_ids":{"type":["list","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_private_dns_resolver_forwarding_rule":{"block":{"attributes":{"dns_forwarding_ruleset_id":{"type":"string","required":true},"domain_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true}},"block_types":{"target_dns_servers":{"nesting_mode":3,"block":{"attributes":{"ip_address":{"type":"string","required":true},"port":{"type":"number","optional":true}}},"required":true}}}},"azurerm_private_dns_resolver_inbound_endpoint":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_dns_resolver_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ip_configurations":{"nesting_mode":3,"block":{"attributes":{"private_ip_address":{"type":"string","optional":true,"computed":true},"private_ip_allocation_method":{"type":"string","optional":true,"default":"Dynamic"},"subnet_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_private_dns_resolver_outbound_endpoint":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_dns_resolver_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_private_dns_resolver_virtual_network_link":{"block":{"attributes":{"dns_forwarding_ruleset_id":{"type":"string","required":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"virtual_network_id":{"type":"string","required":true}}}},"azurerm_private_dns_srv_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"port":{"type":"number","required":true},"priority":{"type":"number","required":true},"target":{"type":"string","required":true},"weight":{"type":"number","required":true}}},"required":true}}}},"azurerm_private_dns_txt_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_private_dns_zone":{"block":{"attributes":{"max_number_of_record_sets":{"type":"number","computed":true},"max_number_of_virtual_network_links":{"type":"number","computed":true},"max_number_of_virtual_network_links_with_registration":{"type":"number","computed":true},"name":{"type":"string","required":true},"number_of_record_sets":{"type":"number","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"soa_record":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","required":true},"expire_time":{"type":"number","optional":true,"default":2419200},"fqdn":{"type":"string","computed":true},"host_name":{"type":"string","computed":true},"minimum_ttl":{"type":"number","optional":true,"default":10},"refresh_time":{"type":"number","optional":true,"default":3600},"retry_time":{"type":"number","optional":true,"default":300},"serial_number":{"type":"number","computed":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","optional":true,"default":3600}}},"optional":true,"computed":true}}}},"azurerm_private_dns_zone_virtual_network_link":{"block":{"attributes":{"name":{"type":"string","required":true},"private_dns_zone_name":{"type":"string","required":true},"registration_enabled":{"type":"bool","optional":true,"default":false},"resolution_policy":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_id":{"type":"string","required":true}}}},"azurerm_private_endpoint":{"block":{"attributes":{"custom_dns_configs":{"type":["list",["object",{"fqdn":"string","ip_addresses":["list","string"]}]],"computed":true},"custom_network_interface_name":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_interface":{"type":["list",["object",{"id":"string","name":"string"}]],"computed":true},"private_dns_zone_configs":{"type":["list",["object",{"id":"string","name":"string","private_dns_zone_id":"string","record_sets":["list",["object",{"fqdn":"string","ip_addresses":["list","string"],"name":"string","ttl":"number","type":"string"}]]}]],"computed":true},"resource_group_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"member_name":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"private_ip_address":{"type":"string","required":true},"subresource_name":{"type":"string","optional":true}}},"optional":true},"private_dns_zone_group":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"private_dns_zone_ids":{"type":["list","string"],"required":true}}},"optional":true},"private_service_connection":{"nesting_mode":3,"block":{"attributes":{"is_manual_connection":{"type":"bool","required":true},"name":{"type":"string","required":true},"private_connection_resource_alias":{"type":"string","optional":true,"exactly_one_of":["private_service_connection.0.private_connection_resource_alias","private_service_connection.0.private_connection_resource_id"]},"private_connection_resource_id":{"type":"string","optional":true,"exactly_one_of":["private_service_connection.0.private_connection_resource_alias","private_service_connection.0.private_connection_resource_id"]},"private_ip_address":{"type":"string","computed":true},"request_message":{"type":"string","optional":true},"subresource_names":{"type":["list","string"],"optional":true}}},"required":true}}}},"azurerm_private_endpoint_application_security_group_association":{"block":{"attributes":{"application_security_group_id":{"type":"string","required":true},"private_endpoint_id":{"type":"string","required":true}}}},"azurerm_private_link_service":{"block":{"attributes":{"alias":{"type":"string","computed":true},"auto_approval_subscription_ids":{"type":["set","string"],"optional":true},"destination_ip_address":{"type":"string","optional":true,"exactly_one_of":["load_balancer_frontend_ip_configuration_ids","destination_ip_address"]},"enable_proxy_protocol":{"type":"bool","optional":true},"fqdns":{"type":["list","string"],"optional":true},"load_balancer_frontend_ip_configuration_ids":{"type":["set","string"],"optional":true,"exactly_one_of":["load_balancer_frontend_ip_configuration_ids","destination_ip_address"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"visibility_subscription_ids":{"type":["set","string"],"optional":true}},"block_types":{"nat_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","required":true},"private_ip_address":{"type":"string","optional":true},"private_ip_address_version":{"type":"string","optional":true,"default":"IPv4"},"subnet_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_proximity_placement_group":{"block":{"attributes":{"allowed_vm_sizes":{"type":["set","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone":{"type":"string","optional":true,"required_with":["allowed_vm_sizes"]}}}},"azurerm_public_ip":{"block":{"attributes":{"allocation_method":{"type":"string","required":true},"ddos_protection_mode":{"type":"string","optional":true,"default":"VirtualNetworkInherited"},"ddos_protection_plan_id":{"type":"string","optional":true},"domain_name_label":{"type":"string","optional":true},"domain_name_label_scope":{"type":"string","optional":true},"edge_zone":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"ip_address":{"type":"string","computed":true},"ip_tags":{"type":["map","string"],"optional":true},"ip_version":{"type":"string","optional":true,"default":"IPv4"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_ip_prefix_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"reverse_fqdn":{"type":"string","optional":true},"sku":{"type":"string","optional":true,"default":"Standard"},"sku_tier":{"type":"string","optional":true,"default":"Regional"},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_public_ip_prefix":{"block":{"attributes":{"custom_ip_prefix_id":{"type":"string","optional":true},"ip_prefix":{"type":"string","computed":true},"ip_version":{"type":"string","optional":true,"default":"IPv4"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"prefix_length":{"type":"number","optional":true,"default":28},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Standard"},"sku_tier":{"type":"string","optional":true,"default":"Regional"},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_purview_account":{"block":{"attributes":{"atlas_kafka_endpoint_primary_connection_string":{"type":"string","computed":true},"atlas_kafka_endpoint_secondary_connection_string":{"type":"string","computed":true},"aws_external_id":{"type":"string","computed":true},"catalog_endpoint":{"type":"string","computed":true},"guardian_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"managed_event_hub_enabled":{"type":"bool","optional":true,"default":true},"managed_resource_group_name":{"type":"string","optional":true,"computed":true},"managed_resources":{"type":["list",["object",{"event_hub_namespace_id":"string","resource_group_id":"string","storage_account_id":"string"}]],"computed":true},"name":{"type":"string","required":true},"public_network_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"scan_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_qumulo_file_system":{"block":{"attributes":{"admin_password":{"type":"string","required":true},"email":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"offer_id":{"type":"string","optional":true,"default":"qumulo-saas-mpp"},"plan_id":{"type":"string","optional":true,"default":"azure-native-qumulo-v3"},"publisher_id":{"type":"string","optional":true,"default":"qumulo1584033880660"},"resource_group_name":{"type":"string","required":true},"storage_sku":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone":{"type":"string","required":true}}}},"azurerm_recovery_services_vault":{"block":{"attributes":{"classic_vmware_replication_enabled":{"type":"bool","optional":true},"cross_region_restore_enabled":{"type":"bool","optional":true,"default":false},"immutability":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"soft_delete_enabled":{"type":"bool","optional":true,"default":true},"storage_mode_type":{"type":"string","optional":true,"default":"GeoRedundant"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"infrastructure_encryption_enabled":{"type":"bool","required":true},"key_id":{"type":"string","required":true},"use_system_assigned_identity":{"type":"bool","optional":true,"default":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true,"required_with":["identity"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"monitoring":{"nesting_mode":3,"block":{"attributes":{"alerts_for_all_job_failures_enabled":{"type":"bool","optional":true,"default":true},"alerts_for_critical_operation_failures_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_recovery_services_vault_resource_guard_association":{"block":{"attributes":{"resource_guard_id":{"type":"string","required":true},"vault_id":{"type":"string","required":true}}}},"azurerm_redhat_openshift_cluster":{"block":{"attributes":{"console_url":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"api_server_profile":{"nesting_mode":3,"block":{"attributes":{"ip_address":{"type":"string","computed":true},"url":{"type":"string","computed":true},"visibility":{"type":"string","required":true}}},"required":true},"cluster_profile":{"nesting_mode":3,"block":{"attributes":{"domain":{"type":"string","required":true},"fips_enabled":{"type":"bool","optional":true,"default":false},"managed_resource_group_name":{"type":"string","optional":true},"pull_secret":{"type":"string","optional":true},"resource_group_id":{"type":"string","computed":true},"version":{"type":"string","required":true}}},"required":true},"ingress_profile":{"nesting_mode":3,"block":{"attributes":{"ip_address":{"type":"string","computed":true},"name":{"type":"string","computed":true},"visibility":{"type":"string","required":true}}},"required":true},"main_profile":{"nesting_mode":3,"block":{"attributes":{"disk_encryption_set_id":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","required":true},"vm_size":{"type":"string","required":true}}},"required":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"outbound_type":{"type":"string","optional":true,"default":"Loadbalancer"},"pod_cidr":{"type":"string","required":true},"preconfigured_network_security_group_enabled":{"type":"bool","optional":true,"default":false},"service_cidr":{"type":"string","required":true}}},"required":true},"service_principal":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true}}},"required":true},"worker_profile":{"nesting_mode":3,"block":{"attributes":{"disk_encryption_set_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","required":true},"encryption_at_host_enabled":{"type":"bool","optional":true,"default":false},"node_count":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"vm_size":{"type":"string","required":true}}},"required":true}}}},"azurerm_redis_cache":{"block":{"attributes":{"access_keys_authentication_enabled":{"type":"bool","optional":true,"default":true},"capacity":{"type":"number","required":true},"family":{"type":"string","required":true},"hostname":{"type":"string","computed":true},"location":{"type":"string","required":true},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"non_ssl_port_enabled":{"type":"bool","optional":true,"default":false},"port":{"type":"number","computed":true},"primary_access_key":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"private_static_ip_address":{"type":"string","optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"redis_version":{"type":"string","optional":true,"default":"6"},"replicas_per_master":{"type":"number","optional":true,"computed":true},"replicas_per_primary":{"type":"number","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"shard_count":{"type":"number","optional":true},"sku_name":{"type":"string","required":true},"ssl_port":{"type":"number","computed":true},"subnet_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"tenant_settings":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"patch_schedule":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"string","required":true},"maintenance_window":{"type":"string","optional":true,"default":"PT5H"},"start_hour_utc":{"type":"number","optional":true}}},"optional":true},"redis_configuration":{"nesting_mode":3,"block":{"attributes":{"active_directory_authentication_enabled":{"type":"bool","optional":true},"aof_backup_enabled":{"type":"bool","optional":true},"aof_storage_connection_string_0":{"type":"string","optional":true},"aof_storage_connection_string_1":{"type":"string","optional":true},"authentication_enabled":{"type":"bool","optional":true,"default":true},"data_persistence_authentication_method":{"type":"string","optional":true},"maxclients":{"type":"number","computed":true},"maxfragmentationmemory_reserved":{"type":"number","optional":true,"computed":true},"maxmemory_delta":{"type":"number","optional":true,"computed":true},"maxmemory_policy":{"type":"string","optional":true,"default":"volatile-lru"},"maxmemory_reserved":{"type":"number","optional":true,"computed":true},"notify_keyspace_events":{"type":"string","optional":true},"rdb_backup_enabled":{"type":"bool","optional":true},"rdb_backup_frequency":{"type":"number","optional":true},"rdb_backup_max_snapshot_count":{"type":"number","optional":true},"rdb_storage_connection_string":{"type":"string","optional":true},"storage_account_subscription_id":{"type":"string","optional":true}}},"optional":true,"computed":true}}}},"azurerm_redis_cache_access_policy":{"block":{"attributes":{"name":{"type":"string","required":true},"permissions":{"type":"string","required":true},"redis_cache_id":{"type":"string","required":true}}}},"azurerm_redis_cache_access_policy_assignment":{"block":{"attributes":{"access_policy_name":{"type":"string","required":true},"name":{"type":"string","required":true},"object_id":{"type":"string","required":true},"object_id_alias":{"type":"string","required":true},"redis_cache_id":{"type":"string","required":true}}}},"azurerm_redis_enterprise_cluster":{"block":{"attributes":{"hostname":{"type":"string","computed":true},"location":{"type":"string","required":true},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_redis_enterprise_database":{"block":{"attributes":{"client_protocol":{"type":"string","optional":true,"default":"Encrypted"},"cluster_id":{"type":"string","required":true},"clustering_policy":{"type":"string","optional":true,"default":"OSSCluster"},"eviction_policy":{"type":"string","optional":true,"default":"VolatileLRU"},"linked_database_group_nickname":{"type":"string","optional":true,"required_with":["linked_database_id"]},"linked_database_id":{"type":["set","string"],"optional":true},"name":{"type":"string","optional":true,"default":"default"},"port":{"type":"number","optional":true,"default":10000},"primary_access_key":{"type":"string","computed":true},"secondary_access_key":{"type":"string","computed":true}},"block_types":{"module":{"nesting_mode":3,"block":{"attributes":{"args":{"type":"string","optional":true,"default":""},"name":{"type":"string","required":true},"version":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_redis_firewall_rule":{"block":{"attributes":{"end_ip":{"type":"string","required":true},"name":{"type":"string","required":true},"redis_cache_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"start_ip":{"type":"string","required":true}}}},"azurerm_redis_linked_server":{"block":{"attributes":{"geo_replicated_primary_host_name":{"type":"string","computed":true},"linked_redis_cache_id":{"type":"string","required":true},"linked_redis_cache_location":{"type":"string","required":true},"name":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"server_role":{"type":"string","required":true},"target_redis_cache_name":{"type":"string","required":true}}}},"azurerm_relay_hybrid_connection":{"block":{"attributes":{"name":{"type":"string","required":true},"relay_namespace_name":{"type":"string","required":true},"requires_client_authorization":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"user_metadata":{"type":"string","optional":true}}}},"azurerm_relay_hybrid_connection_authorization_rule":{"block":{"attributes":{"hybrid_connection_name":{"type":"string","required":true},"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_relay_namespace":{"block":{"attributes":{"location":{"type":"string","required":true},"metric_id":{"type":"string","computed":true},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_relay_namespace_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_resource_deployment_script_azure_cli":{"block":{"attributes":{"cleanup_preference":{"type":"string","optional":true,"default":"Always"},"command_line":{"type":"string","optional":true},"force_update_tag":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outputs":{"type":"string","computed":true},"primary_script_uri":{"type":"string","optional":true,"exactly_one_of":["primary_script_uri","script_content"]},"resource_group_name":{"type":"string","required":true},"retention_interval":{"type":"string","required":true},"script_content":{"type":"string","optional":true,"exactly_one_of":["primary_script_uri","script_content"]},"supporting_script_uris":{"type":["list","string"],"optional":true},"tags":{"type":["map","string"],"optional":true},"timeout":{"type":"string","optional":true,"default":"P1D"},"version":{"type":"string","required":true}},"block_types":{"container":{"nesting_mode":3,"block":{"attributes":{"container_group_name":{"type":"string","optional":true}}},"optional":true},"environment_variable":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"secure_value":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_resource_deployment_script_azure_power_shell":{"block":{"attributes":{"cleanup_preference":{"type":"string","optional":true,"default":"Always"},"command_line":{"type":"string","optional":true},"force_update_tag":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outputs":{"type":"string","computed":true},"primary_script_uri":{"type":"string","optional":true,"exactly_one_of":["primary_script_uri","script_content"]},"resource_group_name":{"type":"string","required":true},"retention_interval":{"type":"string","required":true},"script_content":{"type":"string","optional":true,"exactly_one_of":["primary_script_uri","script_content"]},"supporting_script_uris":{"type":["list","string"],"optional":true},"tags":{"type":["map","string"],"optional":true},"timeout":{"type":"string","optional":true,"default":"P1D"},"version":{"type":"string","required":true}},"block_types":{"container":{"nesting_mode":3,"block":{"attributes":{"container_group_name":{"type":"string","optional":true}}},"optional":true},"environment_variable":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"secure_value":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_resource_group":{"block":{"attributes":{"location":{"type":"string","required":true},"managed_by":{"type":"string","optional":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_resource_group_cost_management_export":{"block":{"attributes":{"active":{"type":"bool","optional":true,"default":true},"file_format":{"type":"string","optional":true,"default":"Csv"},"name":{"type":"string","required":true},"recurrence_period_end_date":{"type":"string","required":true},"recurrence_period_start_date":{"type":"string","required":true},"recurrence_type":{"type":"string","required":true},"resource_group_id":{"type":"string","required":true}},"block_types":{"export_data_options":{"nesting_mode":3,"block":{"attributes":{"time_frame":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true},"export_data_storage_location":{"nesting_mode":3,"block":{"attributes":{"container_id":{"type":"string","required":true},"root_folder_path":{"type":"string","required":true}}},"required":true}}}},"azurerm_resource_group_cost_management_view":{"block":{"attributes":{"accumulated":{"type":"bool","required":true},"chart_type":{"type":"string","required":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true},"report_type":{"type":"string","required":true},"resource_group_id":{"type":"string","required":true},"timeframe":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"granularity":{"type":"string","required":true}},"block_types":{"aggregation":{"nesting_mode":4,"block":{"attributes":{"column_name":{"type":"string","required":true},"name":{"type":"string","required":true}}},"required":true},"grouping":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true},"sorting":{"nesting_mode":3,"block":{"attributes":{"direction":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}},"required":true},"kpi":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}}},"optional":true},"pivot":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_resource_group_policy_assignment":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"enforce":{"type":"bool","optional":true,"default":true},"location":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"not_scopes":{"type":["list","string"],"optional":true},"parameters":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true},"resource_group_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"non_compliance_message":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true}}},"optional":true},"overrides":{"nesting_mode":3,"block":{"attributes":{"value":{"type":"string","required":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","optional":true,"default":"policyDefinitionReferenceId"},"not_in":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"resource_selectors":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","required":true},"not_in":{"type":["list","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_resource_group_policy_exemption":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"exemption_category":{"type":"string","required":true},"expires_on":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_ids":{"type":["list","string"],"optional":true},"resource_group_id":{"type":"string","required":true}}}},"azurerm_resource_group_policy_remediation":{"block":{"attributes":{"failure_percentage":{"type":"number","optional":true},"location_filters":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"parallel_deployments":{"type":"number","optional":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true},"resource_count":{"type":"number","optional":true},"resource_discovery_mode":{"type":"string","optional":true,"default":"ExistingNonCompliant"},"resource_group_id":{"type":"string","required":true}}}},"azurerm_resource_group_template_deployment":{"block":{"attributes":{"debug_level":{"type":"string","optional":true},"deployment_mode":{"type":"string","required":true},"name":{"type":"string","required":true},"output_content":{"type":"string","computed":true},"parameters_content":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"template_content":{"type":"string","optional":true,"computed":true,"exactly_one_of":["template_content","template_spec_version_id"]},"template_spec_version_id":{"type":"string","optional":true,"exactly_one_of":["template_content","template_spec_version_id"]}}}},"azurerm_resource_management_private_link":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_resource_management_private_link_association":{"block":{"attributes":{"management_group_id":{"type":"string","required":true},"name":{"type":"string","optional":true},"public_network_access_enabled":{"type":"bool","required":true},"resource_management_private_link_id":{"type":"string","required":true},"tenant_id":{"type":"string","computed":true}}}},"azurerm_resource_policy_assignment":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"enforce":{"type":"bool","optional":true,"default":true},"location":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"not_scopes":{"type":["list","string"],"optional":true},"parameters":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true},"resource_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"non_compliance_message":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true}}},"optional":true},"overrides":{"nesting_mode":3,"block":{"attributes":{"value":{"type":"string","required":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","optional":true,"default":"policyDefinitionReferenceId"},"not_in":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"resource_selectors":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","required":true},"not_in":{"type":["list","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_resource_policy_exemption":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"exemption_category":{"type":"string","required":true},"expires_on":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_ids":{"type":["list","string"],"optional":true},"resource_id":{"type":"string","required":true}}}},"azurerm_resource_policy_remediation":{"block":{"attributes":{"failure_percentage":{"type":"number","optional":true},"location_filters":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"parallel_deployments":{"type":"number","optional":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true},"resource_count":{"type":"number","optional":true},"resource_discovery_mode":{"type":"string","optional":true,"default":"ExistingNonCompliant"},"resource_id":{"type":"string","required":true}}}},"azurerm_resource_provider_registration":{"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"feature":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"registered":{"type":"bool","required":true}}},"optional":true}}}},"azurerm_restore_point_collection":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_virtual_machine_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_role_assignment":{"block":{"attributes":{"condition":{"type":"string","optional":true},"condition_version":{"type":"string","optional":true,"computed":true},"delegated_managed_identity_resource_id":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"principal_id":{"type":"string","required":true},"principal_type":{"type":"string","optional":true,"computed":true},"role_definition_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["role_definition_id","role_definition_name"]},"role_definition_name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["role_definition_name","role_definition_id"]},"scope":{"type":"string","required":true},"skip_service_principal_aad_check":{"type":"bool","optional":true,"computed":true}}}},"azurerm_role_definition":{"block":{"attributes":{"assignable_scopes":{"type":["list","string"],"optional":true,"computed":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"role_definition_id":{"type":"string","optional":true,"computed":true},"role_definition_resource_id":{"type":"string","computed":true},"scope":{"type":"string","required":true}},"block_types":{"permissions":{"nesting_mode":3,"block":{"attributes":{"actions":{"type":["list","string"],"optional":true},"data_actions":{"type":["set","string"],"optional":true},"not_actions":{"type":["list","string"],"optional":true},"not_data_actions":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_role_management_policy":{"block":{"attributes":{"description":{"type":"string","computed":true},"name":{"type":"string","computed":true},"role_definition_id":{"type":"string","required":true},"scope":{"type":"string","required":true}},"block_types":{"activation_rules":{"nesting_mode":3,"block":{"attributes":{"maximum_duration":{"type":"string","optional":true,"computed":true},"require_approval":{"type":"bool","optional":true,"computed":true},"require_justification":{"type":"bool","optional":true,"computed":true},"require_multifactor_authentication":{"type":"bool","optional":true,"computed":true,"conflicts_with":["activation_rules.0.required_conditional_access_authentication_context"]},"require_ticket_info":{"type":"bool","optional":true,"computed":true},"required_conditional_access_authentication_context":{"type":"string","optional":true,"computed":true,"conflicts_with":["activation_rules.0.require_multifactor_authentication"]}},"block_types":{"approval_stage":{"nesting_mode":3,"block":{"block_types":{"primary_approver":{"nesting_mode":4,"block":{"attributes":{"object_id":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"active_assignment_rules":{"nesting_mode":3,"block":{"attributes":{"expiration_required":{"type":"bool","optional":true,"computed":true},"expire_after":{"type":"string","optional":true,"computed":true},"require_justification":{"type":"bool","optional":true,"computed":true},"require_multifactor_authentication":{"type":"bool","optional":true,"computed":true},"require_ticket_info":{"type":"bool","optional":true,"computed":true}}},"optional":true,"computed":true},"eligible_assignment_rules":{"nesting_mode":3,"block":{"attributes":{"expiration_required":{"type":"bool","optional":true,"computed":true},"expire_after":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"notification_rules":{"nesting_mode":3,"block":{"block_types":{"active_assignments":{"nesting_mode":3,"block":{"block_types":{"admin_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"approver_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"assignee_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"eligible_activations":{"nesting_mode":3,"block":{"block_types":{"admin_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"approver_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"assignee_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"eligible_assignments":{"nesting_mode":3,"block":{"block_types":{"admin_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"approver_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"assignee_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_route":{"block":{"attributes":{"address_prefix":{"type":"string","required":true},"name":{"type":"string","required":true},"next_hop_in_ip_address":{"type":"string","optional":true},"next_hop_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"route_table_name":{"type":"string","required":true}}}},"azurerm_route_filter":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"rule":{"type":["list",["object",{"access":"string","communities":["list","string"],"name":"string","rule_type":"string"}]],"optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_route_map":{"block":{"attributes":{"name":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"next_step_if_matched":{"type":"string","optional":true,"default":"Unknown"}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}},"block_types":{"parameter":{"nesting_mode":3,"block":{"attributes":{"as_path":{"type":["list","string"],"optional":true},"community":{"type":["list","string"],"optional":true},"route_prefix":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"match_criterion":{"nesting_mode":3,"block":{"attributes":{"as_path":{"type":["list","string"],"optional":true},"community":{"type":["list","string"],"optional":true},"match_condition":{"type":"string","required":true},"route_prefix":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_route_server":{"block":{"attributes":{"branch_to_branch_traffic_enabled":{"type":"bool","optional":true,"default":false},"hub_routing_preference":{"type":"string","optional":true,"default":"ExpressRoute"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_ip_address_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"routing_state":{"type":"string","computed":true},"sku":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_router_asn":{"type":"number","computed":true},"virtual_router_ips":{"type":["set","string"],"computed":true}}}},"azurerm_route_server_bgp_connection":{"block":{"attributes":{"name":{"type":"string","required":true},"peer_asn":{"type":"number","required":true},"peer_ip":{"type":"string","required":true},"route_server_id":{"type":"string","required":true}}}},"azurerm_route_table":{"block":{"attributes":{"bgp_route_propagation_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"route":{"type":["set",["object",{"address_prefix":"string","name":"string","next_hop_in_ip_address":"string","next_hop_type":"string"}]],"optional":true,"computed":true},"subnets":{"type":["set","string"],"computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_search_service":{"block":{"attributes":{"allowed_ips":{"type":["set","string"],"optional":true},"authentication_failure_mode":{"type":"string","optional":true},"customer_managed_key_encryption_compliance_status":{"type":"string","computed":true},"customer_managed_key_enforcement_enabled":{"type":"bool","optional":true,"default":false},"hosting_mode":{"type":"string","optional":true,"default":"default"},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_rule_bypass_option":{"type":"string","optional":true,"default":"None"},"partition_count":{"type":"number","optional":true,"default":1},"primary_key":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"query_keys":{"type":["list",["object",{"key":"string","name":"string"}]],"computed":true},"replica_count":{"type":"number","optional":true,"default":1},"resource_group_name":{"type":"string","required":true},"secondary_key":{"type":"string","computed":true},"semantic_search_sku":{"type":"string","optional":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_search_shared_private_link_service":{"block":{"attributes":{"name":{"type":"string","required":true},"request_message":{"type":"string","optional":true},"search_service_id":{"type":"string","required":true},"status":{"type":"string","computed":true},"subresource_name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_security_center_assessment":{"block":{"attributes":{"additional_data":{"type":["map","string"],"optional":true},"assessment_policy_id":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}},"block_types":{"status":{"nesting_mode":3,"block":{"attributes":{"cause":{"type":"string","optional":true},"code":{"type":"string","required":true},"description":{"type":"string","optional":true}}},"required":true}}}},"azurerm_security_center_assessment_policy":{"block":{"attributes":{"categories":{"type":["set","string"],"optional":true,"computed":true},"description":{"type":"string","required":true},"display_name":{"type":"string","required":true},"implementation_effort":{"type":"string","optional":true},"name":{"type":"string","computed":true},"remediation_description":{"type":"string","optional":true},"severity":{"type":"string","optional":true,"default":"Medium"},"threats":{"type":["set","string"],"optional":true},"user_impact":{"type":"string","optional":true}}}},"azurerm_security_center_auto_provisioning":{"block":{"attributes":{"auto_provision":{"type":"string","required":true}}}},"azurerm_security_center_automation":{"block":{"attributes":{"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["list","string"],"required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"connection_string":{"type":"string","optional":true},"resource_id":{"type":"string","required":true},"trigger_url":{"type":"string","optional":true},"type":{"type":"string","optional":true,"computed":true}}},"required":true},"source":{"nesting_mode":3,"block":{"attributes":{"event_source":{"type":"string","required":true}},"block_types":{"rule_set":{"nesting_mode":3,"block":{"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"expected_value":{"type":"string","required":true},"operator":{"type":"string","required":true},"property_path":{"type":"string","required":true},"property_type":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"required":true}}}},"azurerm_security_center_contact":{"block":{"attributes":{"alert_notifications":{"type":"bool","required":true},"alerts_to_admins":{"type":"bool","required":true},"email":{"type":"string","required":true},"name":{"type":"string","required":true},"phone":{"type":"string","optional":true}}}},"azurerm_security_center_server_vulnerability_assessment_virtual_machine":{"block":{"attributes":{"virtual_machine_id":{"type":"string","required":true}}}},"azurerm_security_center_server_vulnerability_assessments_setting":{"block":{"attributes":{"vulnerability_assessment_provider":{"type":"string","required":true}}}},"azurerm_security_center_setting":{"block":{"attributes":{"enabled":{"type":"bool","required":true},"setting_name":{"type":"string","required":true}}}},"azurerm_security_center_storage_defender":{"block":{"attributes":{"malware_scanning_on_upload_cap_gb_per_month":{"type":"number","optional":true,"default":-1},"malware_scanning_on_upload_enabled":{"type":"bool","optional":true,"default":false},"override_subscription_settings_enabled":{"type":"bool","optional":true,"default":false},"scan_results_event_grid_topic_id":{"type":"string","optional":true},"sensitive_data_discovery_enabled":{"type":"bool","optional":true,"default":false},"storage_account_id":{"type":"string","required":true}}}},"azurerm_security_center_subscription_pricing":{"block":{"attributes":{"resource_type":{"type":"string","optional":true,"default":"VirtualMachines"},"subplan":{"type":"string","optional":true},"tier":{"type":"string","required":true}},"block_types":{"extension":{"nesting_mode":4,"block":{"attributes":{"additional_extension_properties":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_security_center_workspace":{"block":{"attributes":{"scope":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_sentinel_alert_rule_anomaly_built_in":{"block":{"attributes":{"anomaly_settings_version":{"type":"number","computed":true},"anomaly_version":{"type":"string","computed":true},"description":{"type":"string","computed":true},"display_name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["name","display_name"]},"enabled":{"type":"bool","required":true},"frequency":{"type":"string","computed":true},"log_analytics_workspace_id":{"type":"string","required":true},"mode":{"type":"string","required":true},"multi_select_observation":{"type":["list",["object",{"description":"string","name":"string","supported_values":["list","string"],"values":["list","string"]}]],"computed":true},"name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["name","display_name"]},"prioritized_exclude_observation":{"type":["list",["object",{"description":"string","exclude":"string","name":"string","prioritize":"string"}]],"computed":true},"required_data_connector":{"type":["list",["object",{"connector_id":"string","data_types":["list","string"]}]],"computed":true},"settings_definition_id":{"type":"string","computed":true},"single_select_observation":{"type":["list",["object",{"description":"string","name":"string","supported_values":["list","string"],"value":"string"}]],"computed":true},"tactics":{"type":["list","string"],"computed":true},"techniques":{"type":["list","string"],"computed":true},"threshold_observation":{"type":["list",["object",{"description":"string","max":"string","min":"string","name":"string","value":"string"}]],"computed":true}}}},"azurerm_sentinel_alert_rule_anomaly_duplicate":{"block":{"attributes":{"anomaly_settings_version":{"type":"number","computed":true},"anomaly_version":{"type":"string","computed":true},"built_in_rule_id":{"type":"string","required":true},"description":{"type":"string","computed":true},"display_name":{"type":"string","required":true},"enabled":{"type":"bool","required":true},"frequency":{"type":"string","computed":true},"is_default_settings":{"type":"bool","computed":true},"log_analytics_workspace_id":{"type":"string","required":true},"mode":{"type":"string","required":true},"name":{"type":"string","computed":true},"required_data_connector":{"type":["list",["object",{"connector_id":"string","data_types":["list","string"]}]],"computed":true},"settings_definition_id":{"type":"string","computed":true},"tactics":{"type":["list","string"],"computed":true},"techniques":{"type":["list","string"],"computed":true}},"block_types":{"multi_select_observation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","computed":true},"name":{"type":"string","required":true},"supported_values":{"type":["list","string"],"computed":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"computed":true},"prioritized_exclude_observation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","computed":true},"exclude":{"type":"string","optional":true},"name":{"type":"string","required":true},"prioritize":{"type":"string","optional":true}}},"optional":true,"computed":true},"single_select_observation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","computed":true},"name":{"type":"string","required":true},"supported_values":{"type":["list","string"],"computed":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"threshold_observation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","computed":true},"max":{"type":"string","computed":true},"min":{"type":"string","computed":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_sentinel_alert_rule_fusion":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","optional":true,"default":"BuiltInFusion"}},"block_types":{"source":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true}},"block_types":{"sub_type":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"severities_allowed":{"type":["set","string"],"required":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_sentinel_alert_rule_machine_learning_behavior_analytics":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_sentinel_alert_rule_ms_security_incident":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"display_name_exclude_filter":{"type":["set","string"],"optional":true},"display_name_filter":{"type":["set","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"product_filter":{"type":"string","required":true},"severity_filter":{"type":["set","string"],"required":true}}}},"azurerm_sentinel_alert_rule_nrt":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","optional":true},"alert_rule_template_version":{"type":"string","optional":true},"custom_details":{"type":["map","string"],"optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"query":{"type":"string","required":true},"severity":{"type":"string","required":true},"suppression_duration":{"type":"string","optional":true,"default":"PT5H"},"suppression_enabled":{"type":"bool","optional":true,"default":false},"tactics":{"type":["set","string"],"optional":true},"techniques":{"type":["set","string"],"optional":true}},"block_types":{"alert_details_override":{"nesting_mode":3,"block":{"attributes":{"description_format":{"type":"string","optional":true},"display_name_format":{"type":"string","optional":true},"severity_column_name":{"type":"string","optional":true},"tactics_column_name":{"type":"string","optional":true}},"block_types":{"dynamic_property":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"entity_mapping":{"nesting_mode":3,"block":{"attributes":{"entity_type":{"type":"string","required":true}},"block_types":{"field_mapping":{"nesting_mode":3,"block":{"attributes":{"column_name":{"type":"string","required":true},"identifier":{"type":"string","required":true}}},"required":true}}},"optional":true},"event_grouping":{"nesting_mode":3,"block":{"attributes":{"aggregation_method":{"type":"string","required":true}}},"required":true},"incident":{"nesting_mode":3,"block":{"attributes":{"create_incident_enabled":{"type":"bool","required":true}},"block_types":{"grouping":{"nesting_mode":3,"block":{"attributes":{"by_alert_details":{"type":["list","string"],"optional":true},"by_custom_details":{"type":["list","string"],"optional":true},"by_entities":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"entity_matching_method":{"type":"string","optional":true,"default":"AnyAlert"},"lookback_duration":{"type":"string","optional":true,"default":"PT5M"},"reopen_closed_incidents":{"type":"bool","optional":true,"default":false}}},"required":true}}},"optional":true,"computed":true},"sentinel_entity_mapping":{"nesting_mode":3,"block":{"attributes":{"column_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_sentinel_alert_rule_scheduled":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","optional":true},"alert_rule_template_version":{"type":"string","optional":true},"custom_details":{"type":["map","string"],"optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"query":{"type":"string","required":true},"query_frequency":{"type":"string","optional":true,"default":"PT5H"},"query_period":{"type":"string","optional":true,"default":"PT5H"},"severity":{"type":"string","required":true},"suppression_duration":{"type":"string","optional":true,"default":"PT5H"},"suppression_enabled":{"type":"bool","optional":true,"default":false},"tactics":{"type":["set","string"],"optional":true},"techniques":{"type":["set","string"],"optional":true},"trigger_operator":{"type":"string","optional":true,"default":"GreaterThan"},"trigger_threshold":{"type":"number","optional":true,"default":0}},"block_types":{"alert_details_override":{"nesting_mode":3,"block":{"attributes":{"description_format":{"type":"string","optional":true},"display_name_format":{"type":"string","optional":true},"severity_column_name":{"type":"string","optional":true},"tactics_column_name":{"type":"string","optional":true}},"block_types":{"dynamic_property":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"entity_mapping":{"nesting_mode":3,"block":{"attributes":{"entity_type":{"type":"string","required":true}},"block_types":{"field_mapping":{"nesting_mode":3,"block":{"attributes":{"column_name":{"type":"string","required":true},"identifier":{"type":"string","required":true}}},"required":true}}},"optional":true},"event_grouping":{"nesting_mode":3,"block":{"attributes":{"aggregation_method":{"type":"string","required":true}}},"optional":true},"incident":{"nesting_mode":3,"block":{"attributes":{"create_incident_enabled":{"type":"bool","required":true}},"block_types":{"grouping":{"nesting_mode":3,"block":{"attributes":{"by_alert_details":{"type":["list","string"],"optional":true},"by_custom_details":{"type":["list","string"],"optional":true},"by_entities":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"entity_matching_method":{"type":"string","optional":true,"default":"AnyAlert"},"lookback_duration":{"type":"string","optional":true,"default":"PT5M"},"reopen_closed_incidents":{"type":"bool","optional":true,"default":false}}},"required":true}}},"optional":true,"computed":true},"sentinel_entity_mapping":{"nesting_mode":3,"block":{"attributes":{"column_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_sentinel_alert_rule_threat_intelligence":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_sentinel_automation_rule":{"block":{"attributes":{"condition_json":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"expiration":{"type":"string","optional":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"order":{"type":"number","required":true},"triggers_on":{"type":"string","optional":true,"default":"Incidents"},"triggers_when":{"type":"string","optional":true,"default":"Created"}},"block_types":{"action_incident":{"nesting_mode":3,"block":{"attributes":{"classification":{"type":"string","optional":true},"classification_comment":{"type":"string","optional":true},"labels":{"type":["list","string"],"optional":true},"order":{"type":"number","required":true},"owner_id":{"type":"string","optional":true},"severity":{"type":"string","optional":true},"status":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["action_incident","action_playbook"]},"action_incident_task":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"order":{"type":"number","required":true},"title":{"type":"string","required":true}}},"optional":true},"action_playbook":{"nesting_mode":3,"block":{"attributes":{"logic_app_id":{"type":"string","required":true},"order":{"type":"number","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true,"at_least_one_of":["action_incident","action_playbook"]}}}},"azurerm_sentinel_data_connector_aws_cloud_trail":{"block":{"attributes":{"aws_role_arn":{"type":"string","required":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_sentinel_data_connector_aws_s3":{"block":{"attributes":{"aws_role_arn":{"type":"string","required":true},"destination_table":{"type":"string","required":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"sqs_urls":{"type":["list","string"],"required":true}}}},"azurerm_sentinel_data_connector_azure_active_directory":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_azure_advanced_threat_protection":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_azure_security_center":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_dynamics_365":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_iot":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_microsoft_cloud_app_security":{"block":{"attributes":{"alerts_enabled":{"type":"bool","optional":true,"default":true},"discovery_logs_enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_microsoft_defender_advanced_threat_protection":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_microsoft_threat_intelligence":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"microsoft_emerging_threat_feed_lookback_date":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_microsoft_threat_protection":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_office_365":{"block":{"attributes":{"exchange_enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"sharepoint_enabled":{"type":"bool","optional":true,"default":true},"teams_enabled":{"type":"bool","optional":true,"default":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_office_365_project":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_office_atp":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_office_irm":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_office_power_bi":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_threat_intelligence":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"lookback_date":{"type":"string","optional":true,"default":"1970-01-01T00:00:00Z"},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_threat_intelligence_taxii":{"block":{"attributes":{"api_root_url":{"type":"string","required":true},"collection_id":{"type":"string","required":true},"display_name":{"type":"string","required":true},"log_analytics_workspace_id":{"type":"string","required":true},"lookback_date":{"type":"string","optional":true,"default":"1970-01-01T00:00:00Z"},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"polling_frequency":{"type":"string","optional":true,"default":"OnceAnHour"},"tenant_id":{"type":"string","optional":true,"computed":true},"user_name":{"type":"string","optional":true}}}},"azurerm_sentinel_log_analytics_workspace_onboarding":{"block":{"attributes":{"customer_managed_key_enabled":{"type":"bool","optional":true,"default":false},"workspace_id":{"type":"string","required":true}}}},"azurerm_sentinel_metadata":{"block":{"attributes":{"content_id":{"type":"string","required":true},"content_schema_version":{"type":"string","optional":true,"default":"2.0"},"custom_version":{"type":"string","optional":true},"dependency":{"type":"string","optional":true},"first_publish_date":{"type":"string","optional":true},"icon_id":{"type":"string","optional":true},"kind":{"type":"string","required":true},"last_publish_date":{"type":"string","optional":true},"name":{"type":"string","required":true},"parent_id":{"type":"string","required":true},"preview_images":{"type":["list","string"],"optional":true},"preview_images_dark":{"type":["list","string"],"optional":true},"providers":{"type":["list","string"],"optional":true},"threat_analysis_tactics":{"type":["list","string"],"optional":true},"threat_analysis_techniques":{"type":["list","string"],"optional":true},"version":{"type":"string","optional":true},"workspace_id":{"type":"string","required":true}},"block_types":{"author":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","optional":true},"link":{"type":"string","optional":true},"name":{"type":"string","optional":true}}},"optional":true},"category":{"nesting_mode":3,"block":{"attributes":{"domains":{"type":["list","string"],"optional":true},"verticals":{"type":["list","string"],"optional":true}}},"optional":true},"source":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","optional":true},"kind":{"type":"string","required":true},"name":{"type":"string","optional":true}}},"optional":true,"computed":true},"support":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","optional":true},"link":{"type":"string","optional":true},"name":{"type":"string","optional":true},"tier":{"type":"string","required":true}}},"optional":true}}}},"azurerm_sentinel_threat_intelligence_indicator":{"block":{"attributes":{"confidence":{"type":"number","optional":true,"default":-1},"created_by":{"type":"string","optional":true},"created_on":{"type":"string","computed":true},"defanged":{"type":"bool","computed":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"extension":{"type":"string","optional":true,"computed":true},"external_id":{"type":"string","computed":true},"external_last_updated_time_utc":{"type":"string","computed":true},"guid":{"type":"string","computed":true},"indicator_type":{"type":["list","string"],"computed":true},"language":{"type":"string","optional":true},"last_updated_time_utc":{"type":"string","computed":true},"object_marking_refs":{"type":["list","string"],"optional":true},"parsed_pattern":{"type":["list",["object",{"pattern_type_key":"string","pattern_type_values":["list",["object",{"value":"string","value_type":"string"}]]}]],"computed":true},"pattern":{"type":"string","required":true},"pattern_type":{"type":"string","required":true},"pattern_version":{"type":"string","optional":true},"revoked":{"type":"bool","optional":true,"default":false},"source":{"type":"string","required":true},"tags":{"type":["list","string"],"optional":true},"threat_types":{"type":["list","string"],"optional":true},"validate_from_utc":{"type":"string","required":true},"validate_until_utc":{"type":"string","optional":true},"workspace_id":{"type":"string","required":true}},"block_types":{"external_reference":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"hashes":{"type":["map","string"],"optional":true},"id":{"type":"string","computed":true},"source_name":{"type":"string","optional":true},"url":{"type":"string","optional":true}}},"optional":true},"granular_marking":{"nesting_mode":3,"block":{"attributes":{"language":{"type":"string","optional":true},"marking_ref":{"type":"string","optional":true},"selectors":{"type":["list","string"],"optional":true}}},"optional":true},"kill_chain_phase":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_sentinel_watchlist":{"block":{"attributes":{"default_duration":{"type":"string","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"item_search_key":{"type":"string","required":true},"labels":{"type":["list","string"],"optional":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_sentinel_watchlist_item":{"block":{"attributes":{"name":{"type":"string","optional":true,"computed":true},"properties":{"type":["map","string"],"required":true},"watchlist_id":{"type":"string","required":true}}}},"azurerm_service_fabric_cluster":{"block":{"attributes":{"add_on_features":{"type":["set","string"],"optional":true},"cluster_code_version":{"type":"string","optional":true,"computed":true},"cluster_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"management_endpoint":{"type":"string","required":true},"name":{"type":"string","required":true},"reliability_level":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"service_fabric_zonal_upgrade_mode":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"upgrade_mode":{"type":"string","required":true},"vm_image":{"type":"string","required":true},"vmss_zonal_upgrade_mode":{"type":"string","optional":true}},"block_types":{"azure_active_directory":{"nesting_mode":3,"block":{"attributes":{"client_application_id":{"type":"string","required":true},"cluster_application_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}},"optional":true},"certificate":{"nesting_mode":3,"block":{"attributes":{"thumbprint":{"type":"string","required":true},"thumbprint_secondary":{"type":"string","optional":true},"x509_store_name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["certificate_common_names"]},"certificate_common_names":{"nesting_mode":3,"block":{"attributes":{"x509_store_name":{"type":"string","required":true}},"block_types":{"common_names":{"nesting_mode":4,"block":{"attributes":{"certificate_common_name":{"type":"string","required":true},"certificate_issuer_thumbprint":{"type":"string","optional":true}}},"required":true}}},"optional":true,"conflicts_with":["certificate"]},"client_certificate_common_name":{"nesting_mode":3,"block":{"attributes":{"common_name":{"type":"string","required":true},"is_admin":{"type":"bool","required":true},"issuer_thumbprint":{"type":"string","optional":true}}},"optional":true},"client_certificate_thumbprint":{"nesting_mode":3,"block":{"attributes":{"is_admin":{"type":"bool","required":true},"thumbprint":{"type":"string","required":true}}},"optional":true},"diagnostics_config":{"nesting_mode":3,"block":{"attributes":{"blob_endpoint":{"type":"string","required":true},"protected_account_key_name":{"type":"string","required":true},"queue_endpoint":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"table_endpoint":{"type":"string","required":true}}},"optional":true},"fabric_settings":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"node_type":{"nesting_mode":3,"block":{"attributes":{"capacities":{"type":["map","string"],"optional":true},"client_endpoint_port":{"type":"number","required":true},"durability_level":{"type":"string","optional":true,"default":"Bronze"},"http_endpoint_port":{"type":"number","required":true},"instance_count":{"type":"number","required":true},"is_primary":{"type":"bool","required":true},"is_stateless":{"type":"bool","optional":true},"multiple_availability_zones":{"type":"bool","optional":true},"name":{"type":"string","required":true},"placement_properties":{"type":["map","string"],"optional":true},"reverse_proxy_endpoint_port":{"type":"number","optional":true}},"block_types":{"application_ports":{"nesting_mode":3,"block":{"attributes":{"end_port":{"type":"number","required":true},"start_port":{"type":"number","required":true}}},"optional":true,"computed":true},"ephemeral_ports":{"nesting_mode":3,"block":{"attributes":{"end_port":{"type":"number","required":true},"start_port":{"type":"number","required":true}}},"optional":true,"computed":true}}},"required":true},"reverse_proxy_certificate":{"nesting_mode":3,"block":{"attributes":{"thumbprint":{"type":"string","required":true},"thumbprint_secondary":{"type":"string","optional":true},"x509_store_name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["reverse_proxy_certificate_common_names"]},"reverse_proxy_certificate_common_names":{"nesting_mode":3,"block":{"attributes":{"x509_store_name":{"type":"string","required":true}},"block_types":{"common_names":{"nesting_mode":4,"block":{"attributes":{"certificate_common_name":{"type":"string","required":true},"certificate_issuer_thumbprint":{"type":"string","optional":true}}},"required":true}}},"optional":true,"conflicts_with":["reverse_proxy_certificate"]},"upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"force_restart_enabled":{"type":"bool","optional":true},"health_check_retry_timeout":{"type":"string","optional":true,"default":"00:45:00"},"health_check_stable_duration":{"type":"string","optional":true,"default":"00:01:00"},"health_check_wait_duration":{"type":"string","optional":true,"default":"00:00:30"},"upgrade_domain_timeout":{"type":"string","optional":true,"default":"02:00:00"},"upgrade_replica_set_check_timeout":{"type":"string","optional":true,"default":"10675199.02:48:05.4775807"},"upgrade_timeout":{"type":"string","optional":true,"default":"12:00:00"}},"block_types":{"delta_health_policy":{"nesting_mode":3,"block":{"attributes":{"max_delta_unhealthy_applications_percent":{"type":"number","optional":true,"default":0},"max_delta_unhealthy_nodes_percent":{"type":"number","optional":true,"default":0},"max_upgrade_domain_delta_unhealthy_nodes_percent":{"type":"number","optional":true,"default":0}}},"optional":true},"health_policy":{"nesting_mode":3,"block":{"attributes":{"max_unhealthy_applications_percent":{"type":"number","optional":true,"default":0},"max_unhealthy_nodes_percent":{"type":"number","optional":true,"default":0}}},"optional":true}}},"optional":true}}}},"azurerm_service_fabric_managed_cluster":{"block":{"attributes":{"backup_service_enabled":{"type":"bool","optional":true},"client_connection_port":{"type":"number","required":true},"dns_name":{"type":"string","optional":true,"computed":true},"dns_service_enabled":{"type":"bool","optional":true},"http_gateway_port":{"type":"number","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Basic"},"subnet_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"upgrade_wave":{"type":"string","optional":true,"default":"Wave0"},"username":{"type":"string","optional":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"client_application_id":{"type":"string","required":true},"cluster_application_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}},"optional":true},"certificate":{"nesting_mode":3,"block":{"attributes":{"common_name":{"type":"string","optional":true},"thumbprint":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"optional":true},"custom_fabric_setting":{"nesting_mode":3,"block":{"attributes":{"parameter":{"type":"string","required":true},"section":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"lb_rule":{"nesting_mode":3,"block":{"attributes":{"backend_port":{"type":"number","required":true},"frontend_port":{"type":"number","required":true},"probe_protocol":{"type":"string","required":true},"probe_request_path":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"required":true},"node_type":{"nesting_mode":3,"block":{"attributes":{"application_port_range":{"type":"string","required":true},"capacities":{"type":["map","string"],"optional":true},"data_disk_size_gb":{"type":"number","required":true},"data_disk_type":{"type":"string","optional":true,"default":"Standard_LRS"},"ephemeral_port_range":{"type":"string","required":true},"id":{"type":"string","computed":true},"multiple_placement_groups_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"placement_properties":{"type":["map","string"],"optional":true},"primary":{"type":"bool","optional":true},"stateless":{"type":"bool","optional":true},"vm_image_offer":{"type":"string","required":true},"vm_image_publisher":{"type":"string","required":true},"vm_image_sku":{"type":"string","required":true},"vm_image_version":{"type":"string","required":true},"vm_instance_count":{"type":"number","required":true},"vm_size":{"type":"string","required":true}},"block_types":{"vm_secrets":{"nesting_mode":3,"block":{"attributes":{"vault_id":{"type":"string","required":true}},"block_types":{"certificates":{"nesting_mode":3,"block":{"attributes":{"store":{"type":"string","required":true},"url":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true}}}},"azurerm_service_plan":{"block":{"attributes":{"app_service_environment_id":{"type":"string","optional":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"maximum_elastic_worker_count":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"os_type":{"type":"string","required":true},"per_site_scaling_enabled":{"type":"bool","optional":true,"default":false},"premium_plan_auto_scale_enabled":{"type":"bool","optional":true,"default":false},"reserved":{"type":"bool","computed":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"worker_count":{"type":"number","optional":true,"computed":true},"zone_balancing_enabled":{"type":"bool","optional":true}}}},"azurerm_servicebus_namespace":{"block":{"attributes":{"capacity":{"type":"number","optional":true,"default":0},"default_primary_connection_string":{"type":"string","computed":true},"default_primary_key":{"type":"string","computed":true},"default_secondary_connection_string":{"type":"string","computed":true},"default_secondary_key":{"type":"string","computed":true},"endpoint":{"type":"string","computed":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"premium_messaging_partitions":{"type":"number","optional":true,"default":0},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"identity_id":{"type":"string","required":true},"infrastructure_encryption_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_rule_set":{"nesting_mode":3,"block":{"attributes":{"default_action":{"type":"string","optional":true,"default":"Allow"},"ip_rules":{"type":["set","string"],"optional":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"trusted_services_allowed":{"type":"bool","optional":true,"default":false}},"block_types":{"network_rules":{"nesting_mode":4,"block":{"attributes":{"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_servicebus_namespace_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_id":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_connection_string_alias":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_servicebus_namespace_customer_managed_key":{"block":{"attributes":{"infrastructure_encryption_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","required":true},"namespace_id":{"type":"string","required":true}}}},"azurerm_servicebus_namespace_disaster_recovery_config":{"block":{"attributes":{"alias_authorization_rule_id":{"type":"string","optional":true},"default_primary_key":{"type":"string","computed":true},"default_secondary_key":{"type":"string","computed":true},"name":{"type":"string","required":true},"partner_namespace_id":{"type":"string","required":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_namespace_id":{"type":"string","required":true},"secondary_connection_string_alias":{"type":"string","computed":true}}}},"azurerm_servicebus_queue":{"block":{"attributes":{"auto_delete_on_idle":{"type":"string","optional":true,"computed":true},"batched_operations_enabled":{"type":"bool","optional":true,"default":true},"dead_lettering_on_message_expiration":{"type":"bool","optional":true,"default":false},"default_message_ttl":{"type":"string","optional":true,"computed":true},"duplicate_detection_history_time_window":{"type":"string","optional":true,"default":"PT10M"},"express_enabled":{"type":"bool","optional":true,"default":false},"forward_dead_lettered_messages_to":{"type":"string","optional":true},"forward_to":{"type":"string","optional":true},"lock_duration":{"type":"string","optional":true,"default":"PT1M"},"max_delivery_count":{"type":"number","optional":true,"default":10},"max_message_size_in_kilobytes":{"type":"number","optional":true,"computed":true},"max_size_in_megabytes":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"namespace_id":{"type":"string","required":true},"partitioning_enabled":{"type":"bool","optional":true,"default":false},"requires_duplicate_detection":{"type":"bool","optional":true,"default":false},"requires_session":{"type":"bool","optional":true,"default":false},"status":{"type":"string","optional":true,"default":"Active"}}}},"azurerm_servicebus_queue_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"queue_id":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_connection_string_alias":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_servicebus_subscription":{"block":{"attributes":{"auto_delete_on_idle":{"type":"string","optional":true,"default":"P10675199DT2H48M5.4775807S"},"batched_operations_enabled":{"type":"bool","optional":true},"client_scoped_subscription_enabled":{"type":"bool","optional":true,"default":false},"dead_lettering_on_filter_evaluation_error":{"type":"bool","optional":true,"default":true},"dead_lettering_on_message_expiration":{"type":"bool","optional":true},"default_message_ttl":{"type":"string","optional":true,"default":"P10675199DT2H48M5.4775807S"},"forward_dead_lettered_messages_to":{"type":"string","optional":true},"forward_to":{"type":"string","optional":true},"lock_duration":{"type":"string","optional":true,"default":"PT1M"},"max_delivery_count":{"type":"number","required":true},"name":{"type":"string","required":true},"requires_session":{"type":"bool","optional":true},"status":{"type":"string","optional":true,"default":"Active"},"topic_id":{"type":"string","required":true}},"block_types":{"client_scoped_subscription":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true},"is_client_scoped_subscription_durable":{"type":"bool","computed":true},"is_client_scoped_subscription_shareable":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_servicebus_subscription_rule":{"block":{"attributes":{"action":{"type":"string","optional":true},"filter_type":{"type":"string","required":true},"name":{"type":"string","required":true},"sql_filter":{"type":"string","optional":true},"sql_filter_compatibility_level":{"type":"number","computed":true},"subscription_id":{"type":"string","required":true}},"block_types":{"correlation_filter":{"nesting_mode":3,"block":{"attributes":{"content_type":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"correlation_id":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"label":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"message_id":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"properties":{"type":["map","string"],"optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"reply_to":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"reply_to_session_id":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"session_id":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"to":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]}}},"optional":true,"conflicts_with":["sql_filter"]}}}},"azurerm_servicebus_topic":{"block":{"attributes":{"auto_delete_on_idle":{"type":"string","optional":true,"default":"P10675199DT2H48M5.4775807S"},"batched_operations_enabled":{"type":"bool","optional":true},"default_message_ttl":{"type":"string","optional":true,"default":"P10675199DT2H48M5.4775807S"},"duplicate_detection_history_time_window":{"type":"string","optional":true,"default":"PT10M"},"express_enabled":{"type":"bool","optional":true},"max_message_size_in_kilobytes":{"type":"number","optional":true,"computed":true},"max_size_in_megabytes":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"namespace_id":{"type":"string","required":true},"partitioning_enabled":{"type":"bool","optional":true},"requires_duplicate_detection":{"type":"bool","optional":true},"status":{"type":"string","optional":true,"default":"Active"},"support_ordering":{"type":"bool","optional":true}}}},"azurerm_servicebus_topic_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_connection_string_alias":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false},"topic_id":{"type":"string","required":true}}}},"azurerm_shared_image":{"block":{"attributes":{"accelerated_network_support_enabled":{"type":"bool","optional":true},"architecture":{"type":"string","optional":true,"default":"x64"},"confidential_vm_enabled":{"type":"bool","optional":true,"conflicts_with":["trusted_launch_supported","trusted_launch_enabled","confidential_vm_supported"]},"confidential_vm_supported":{"type":"bool","optional":true,"conflicts_with":["trusted_launch_supported","trusted_launch_enabled","confidential_vm_enabled"]},"description":{"type":"string","optional":true},"disk_controller_type_nvme_enabled":{"type":"bool","optional":true},"disk_types_not_allowed":{"type":["set","string"],"optional":true},"end_of_life_date":{"type":"string","optional":true},"eula":{"type":"string","optional":true},"gallery_name":{"type":"string","required":true},"hibernation_enabled":{"type":"bool","optional":true},"hyper_v_generation":{"type":"string","optional":true,"default":"V1"},"location":{"type":"string","required":true},"max_recommended_memory_in_gb":{"type":"number","optional":true},"max_recommended_vcpu_count":{"type":"number","optional":true},"min_recommended_memory_in_gb":{"type":"number","optional":true},"min_recommended_vcpu_count":{"type":"number","optional":true},"name":{"type":"string","required":true},"os_type":{"type":"string","required":true},"privacy_statement_uri":{"type":"string","optional":true},"release_note_uri":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"specialized":{"type":"bool","optional":true},"tags":{"type":["map","string"],"optional":true},"trusted_launch_enabled":{"type":"bool","optional":true,"conflicts_with":["trusted_launch_supported","confidential_vm_supported","confidential_vm_enabled"]},"trusted_launch_supported":{"type":"bool","optional":true,"conflicts_with":["trusted_launch_enabled","confidential_vm_supported","confidential_vm_enabled"]}},"block_types":{"identifier":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true}}},"required":true},"purchase_plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","optional":true},"publisher":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_shared_image_gallery":{"block":{"attributes":{"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"unique_name":{"type":"string","computed":true}},"block_types":{"sharing":{"nesting_mode":3,"block":{"attributes":{"permission":{"type":"string","required":true}},"block_types":{"community_gallery":{"nesting_mode":3,"block":{"attributes":{"eula":{"type":"string","required":true},"name":{"type":"string","computed":true},"prefix":{"type":"string","required":true},"publisher_email":{"type":"string","required":true},"publisher_uri":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_shared_image_version":{"block":{"attributes":{"blob_uri":{"type":"string","optional":true,"exactly_one_of":["blob_uri","os_disk_snapshot_id","managed_image_id"],"required_with":["storage_account_id"]},"deletion_of_replicated_locations_enabled":{"type":"bool","optional":true,"default":false},"end_of_life_date":{"type":"string","optional":true},"exclude_from_latest":{"type":"bool","optional":true,"default":false},"gallery_name":{"type":"string","required":true},"image_name":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_image_id":{"type":"string","optional":true,"exactly_one_of":["blob_uri","os_disk_snapshot_id","managed_image_id"]},"name":{"type":"string","required":true},"os_disk_snapshot_id":{"type":"string","optional":true,"exactly_one_of":["blob_uri","os_disk_snapshot_id","managed_image_id"]},"replication_mode":{"type":"string","optional":true,"default":"Full"},"resource_group_name":{"type":"string","required":true},"storage_account_id":{"type":"string","optional":true,"required_with":["blob_uri"]},"tags":{"type":["map","string"],"optional":true}},"block_types":{"target_region":{"nesting_mode":3,"block":{"attributes":{"disk_encryption_set_id":{"type":"string","optional":true},"exclude_from_latest_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"regional_replica_count":{"type":"number","required":true},"storage_account_type":{"type":"string","optional":true,"default":"Standard_LRS"}}},"required":true}}}},"azurerm_signalr_service":{"block":{"attributes":{"aad_auth_enabled":{"type":"bool","optional":true,"default":true},"connectivity_logs_enabled":{"type":"bool","optional":true,"default":false},"hostname":{"type":"string","computed":true},"http_request_logs_enabled":{"type":"bool","optional":true,"default":false},"ip_address":{"type":"string","computed":true},"live_trace_enabled":{"type":"bool","optional":true,"default":false},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"messaging_logs_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"public_port":{"type":"number","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"server_port":{"type":"number","computed":true},"serverless_connection_timeout_in_seconds":{"type":"number","optional":true,"default":30},"service_mode":{"type":"string","optional":true,"default":"Default"},"tags":{"type":["map","string"],"optional":true},"tls_client_cert_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"live_trace":{"nesting_mode":3,"block":{"attributes":{"connectivity_logs_enabled":{"type":"bool","optional":true,"default":true},"enabled":{"type":"bool","optional":true,"default":true},"http_request_logs_enabled":{"type":"bool","optional":true,"default":true},"messaging_logs_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"name":{"type":"string","required":true}}},"required":true},"upstream_endpoint":{"nesting_mode":4,"block":{"attributes":{"category_pattern":{"type":["list","string"],"required":true},"event_pattern":{"type":["list","string"],"required":true},"hub_pattern":{"type":["list","string"],"required":true},"url_template":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_signalr_service_custom_certificate":{"block":{"attributes":{"certificate_version":{"type":"string","computed":true},"custom_certificate_id":{"type":"string","required":true},"name":{"type":"string","required":true},"signalr_service_id":{"type":"string","required":true}}}},"azurerm_signalr_service_custom_domain":{"block":{"attributes":{"domain_name":{"type":"string","required":true},"name":{"type":"string","required":true},"signalr_custom_certificate_id":{"type":"string","required":true},"signalr_service_id":{"type":"string","required":true}}}},"azurerm_signalr_service_network_acl":{"block":{"attributes":{"default_action":{"type":"string","required":true},"signalr_service_id":{"type":"string","required":true}},"block_types":{"private_endpoint":{"nesting_mode":4,"block":{"attributes":{"allowed_request_types":{"type":["set","string"],"optional":true},"denied_request_types":{"type":["set","string"],"optional":true},"id":{"type":"string","required":true}}},"optional":true},"public_network":{"nesting_mode":3,"block":{"attributes":{"allowed_request_types":{"type":["set","string"],"optional":true,"conflicts_with":["public_network.0.denied_request_types"]},"denied_request_types":{"type":["set","string"],"optional":true,"conflicts_with":["public_network.0.allowed_request_types"]}}},"required":true}}}},"azurerm_signalr_shared_private_link_resource":{"block":{"attributes":{"name":{"type":"string","required":true},"request_message":{"type":"string","optional":true},"signalr_service_id":{"type":"string","required":true},"status":{"type":"string","computed":true},"sub_resource_name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_site_recovery_fabric":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_site_recovery_hyperv_network_mapping":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_id":{"type":"string","required":true},"source_network_name":{"type":"string","required":true},"source_system_center_virtual_machine_manager_name":{"type":"string","required":true},"target_network_id":{"type":"string","required":true}}}},"azurerm_site_recovery_hyperv_replication_policy":{"block":{"attributes":{"application_consistent_snapshot_frequency_in_hours":{"type":"number","required":true},"name":{"type":"string","required":true},"recovery_point_retention_in_hours":{"type":"number","required":true},"recovery_vault_id":{"type":"string","required":true},"replication_interval_in_seconds":{"type":"number","required":true}}}},"azurerm_site_recovery_hyperv_replication_policy_association":{"block":{"attributes":{"hyperv_site_id":{"type":"string","required":true},"name":{"type":"string","required":true},"policy_id":{"type":"string","required":true}}}},"azurerm_site_recovery_network_mapping":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_network_id":{"type":"string","required":true},"source_recovery_fabric_name":{"type":"string","required":true},"target_network_id":{"type":"string","required":true},"target_recovery_fabric_name":{"type":"string","required":true}}}},"azurerm_site_recovery_protection_container":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_fabric_name":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_site_recovery_protection_container_mapping":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_fabric_name":{"type":"string","required":true},"recovery_replication_policy_id":{"type":"string","required":true},"recovery_source_protection_container_name":{"type":"string","required":true},"recovery_target_protection_container_id":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"automatic_update":{"nesting_mode":3,"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"SystemAssignedIdentity"},"automation_account_id":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_site_recovery_replicated_vm":{"block":{"attributes":{"managed_disk":{"type":["set",["object",{"disk_id":"string","staging_storage_account_id":"string","target_disk_encryption":["list",["object",{"disk_encryption_key":["list",["object",{"secret_url":"string","vault_id":"string"}]],"key_encryption_key":["list",["object",{"key_url":"string","vault_id":"string"}]]}]],"target_disk_encryption_set_id":"string","target_disk_type":"string","target_replica_disk_type":"string","target_resource_group_id":"string"}]],"optional":true,"computed":true},"multi_vm_group_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_interface":{"type":["set",["object",{"failover_test_public_ip_address_id":"string","failover_test_static_ip":"string","failover_test_subnet_name":"string","recovery_load_balancer_backend_address_pool_ids":["set","string"],"recovery_public_ip_address_id":"string","source_network_interface_id":"string","target_static_ip":"string","target_subnet_name":"string"}]],"optional":true,"computed":true},"recovery_replication_policy_id":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_recovery_fabric_name":{"type":"string","required":true},"source_recovery_protection_container_name":{"type":"string","required":true},"source_vm_id":{"type":"string","required":true},"target_availability_set_id":{"type":"string","optional":true,"conflicts_with":["target_zone"]},"target_boot_diagnostic_storage_account_id":{"type":"string","optional":true},"target_capacity_reservation_group_id":{"type":"string","optional":true},"target_edge_zone":{"type":"string","optional":true},"target_network_id":{"type":"string","optional":true,"computed":true},"target_proximity_placement_group_id":{"type":"string","optional":true},"target_recovery_fabric_id":{"type":"string","required":true},"target_recovery_protection_container_id":{"type":"string","required":true},"target_resource_group_id":{"type":"string","required":true},"target_virtual_machine_scale_set_id":{"type":"string","optional":true},"target_virtual_machine_size":{"type":"string","optional":true,"computed":true},"target_zone":{"type":"string","optional":true},"test_network_id":{"type":"string","optional":true,"computed":true},"unmanaged_disk":{"type":["set",["object",{"disk_uri":"string","staging_storage_account_id":"string","target_storage_account_id":"string"}]],"optional":true,"computed":true}}}},"azurerm_site_recovery_replication_policy":{"block":{"attributes":{"application_consistent_snapshot_frequency_in_minutes":{"type":"number","required":true},"name":{"type":"string","required":true},"recovery_point_retention_in_minutes":{"type":"number","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_site_recovery_replication_recovery_plan":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_id":{"type":"string","required":true},"source_recovery_fabric_id":{"type":"string","required":true},"target_recovery_fabric_id":{"type":"string","required":true}},"block_types":{"azure_to_azure_settings":{"nesting_mode":3,"block":{"attributes":{"primary_edge_zone":{"type":"string","optional":true,"required_with":["azure_to_azure_settings.0.recovery_edge_zone"]},"primary_zone":{"type":"string","optional":true,"required_with":["azure_to_azure_settings.0.recovery_zone"]},"recovery_edge_zone":{"type":"string","optional":true,"required_with":["azure_to_azure_settings.0.primary_edge_zone"]},"recovery_zone":{"type":"string","optional":true,"required_with":["azure_to_azure_settings.0.primary_zone"]}}},"optional":true},"boot_recovery_group":{"nesting_mode":3,"block":{"attributes":{"replicated_protected_items":{"type":["list","string"],"optional":true}},"block_types":{"post_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true},"pre_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true}}},"required":true},"failover_recovery_group":{"nesting_mode":3,"block":{"block_types":{"post_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true},"pre_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true}}},"required":true},"shutdown_recovery_group":{"nesting_mode":3,"block":{"block_types":{"post_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true},"pre_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_site_recovery_services_vault_hyperv_site":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_id":{"type":"string","required":true}}}},"azurerm_site_recovery_vmware_replicated_vm":{"block":{"attributes":{"appliance_name":{"type":"string","required":true},"default_log_storage_account_id":{"type":"string","optional":true,"exactly_one_of":["managed_disk","default_log_storage_account_id"]},"default_recovery_disk_type":{"type":"string","optional":true,"exactly_one_of":["managed_disk","default_recovery_disk_type"]},"default_target_disk_encryption_set_id":{"type":"string","optional":true},"license_type":{"type":"string","optional":true,"default":"NotSpecified"},"multi_vm_group_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"physical_server_credential_name":{"type":"string","required":true},"recovery_replication_policy_id":{"type":"string","required":true},"recovery_vault_id":{"type":"string","required":true},"source_vm_name":{"type":"string","required":true},"target_availability_set_id":{"type":"string","optional":true,"conflicts_with":["target_zone"]},"target_boot_diagnostics_storage_account_id":{"type":"string","optional":true},"target_network_id":{"type":"string","optional":true,"required_with":["network_interface"]},"target_proximity_placement_group_id":{"type":"string","optional":true},"target_resource_group_id":{"type":"string","required":true},"target_vm_name":{"type":"string","required":true},"target_vm_size":{"type":"string","optional":true},"target_zone":{"type":"string","optional":true,"conflicts_with":["target_availability_set_id"]},"test_network_id":{"type":"string","optional":true}},"block_types":{"managed_disk":{"nesting_mode":3,"block":{"attributes":{"disk_id":{"type":"string","required":true},"log_storage_account_id":{"type":"string","optional":true},"target_disk_encryption_set_id":{"type":"string","optional":true},"target_disk_type":{"type":"string","required":true}}},"optional":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"is_primary":{"type":"bool","required":true},"source_mac_address":{"type":"string","required":true},"target_static_ip":{"type":"string","optional":true},"target_subnet_name":{"type":"string","optional":true},"test_subnet_name":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_site_recovery_vmware_replication_policy":{"block":{"attributes":{"application_consistent_snapshot_frequency_in_minutes":{"type":"number","required":true},"name":{"type":"string","required":true},"recovery_point_retention_in_minutes":{"type":"number","required":true},"recovery_vault_id":{"type":"string","required":true}}}},"azurerm_site_recovery_vmware_replication_policy_association":{"block":{"attributes":{"name":{"type":"string","required":true},"policy_id":{"type":"string","required":true},"recovery_vault_id":{"type":"string","required":true}}}},"azurerm_snapshot":{"block":{"attributes":{"create_option":{"type":"string","required":true},"disk_access_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"incremental_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_access_policy":{"type":"string","optional":true,"default":"AllowAll"},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"source_resource_id":{"type":"string","optional":true},"source_uri":{"type":"string","optional":true},"storage_account_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"trusted_launch_enabled":{"type":"bool","computed":true}},"block_types":{"encryption_settings":{"nesting_mode":3,"block":{"block_types":{"disk_encryption_key":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"required":true},"key_encryption_key":{"nesting_mode":3,"block":{"attributes":{"key_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_source_control_token":{"block":{"attributes":{"token":{"type":"string","required":true},"token_secret":{"type":"string","optional":true},"type":{"type":"string","required":true}}}},"azurerm_spatial_anchors_account":{"block":{"attributes":{"account_domain":{"type":"string","computed":true},"account_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_spring_cloud_accelerator":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_active_deployment":{"block":{"attributes":{"deployment_name":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_api_portal":{"block":{"attributes":{"api_try_out_enabled":{"type":"bool","optional":true},"gateway_ids":{"type":["set","string"],"optional":true},"https_only_enabled":{"type":"bool","optional":true},"instance_count":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true},"spring_cloud_service_id":{"type":"string","required":true},"url":{"type":"string","computed":true}},"block_types":{"sso":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true},"client_secret":{"type":"string","optional":true},"issuer_uri":{"type":"string","optional":true},"scope":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_spring_cloud_api_portal_custom_domain":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_api_portal_id":{"type":"string","required":true},"thumbprint":{"type":"string","optional":true}}}},"azurerm_spring_cloud_app":{"block":{"attributes":{"addon_json":{"type":"string","optional":true,"computed":true},"fqdn":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"is_public":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"public_endpoint_enabled":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"service_name":{"type":"string","required":true},"tls_enabled":{"type":"bool","optional":true,"default":false},"url":{"type":"string","computed":true}},"block_types":{"custom_persistent_disk":{"nesting_mode":3,"block":{"attributes":{"mount_options":{"type":["set","string"],"optional":true},"mount_path":{"type":"string","required":true},"read_only_enabled":{"type":"bool","optional":true,"default":false},"share_name":{"type":"string","required":true},"storage_name":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"ingress_settings":{"nesting_mode":3,"block":{"attributes":{"backend_protocol":{"type":"string","optional":true,"default":"Default"},"read_timeout_in_seconds":{"type":"number","optional":true,"default":300},"send_timeout_in_seconds":{"type":"number","optional":true,"default":60},"session_affinity":{"type":"string","optional":true,"default":"None"},"session_cookie_max_age":{"type":"number","optional":true}}},"optional":true,"computed":true},"persistent_disk":{"nesting_mode":3,"block":{"attributes":{"mount_path":{"type":"string","optional":true,"default":"/persistent"},"size_in_gb":{"type":"number","required":true}}},"optional":true,"computed":true}}}},"azurerm_spring_cloud_app_cosmosdb_association":{"block":{"attributes":{"api_type":{"type":"string","required":true},"cosmosdb_access_key":{"type":"string","required":true},"cosmosdb_account_id":{"type":"string","required":true},"cosmosdb_cassandra_keyspace_name":{"type":"string","optional":true,"conflicts_with":["cosmosdb_gremlin_database_name","cosmosdb_gremlin_graph_name","cosmosdb_mongo_database_name","cosmosdb_sql_database_name"]},"cosmosdb_gremlin_database_name":{"type":"string","optional":true,"conflicts_with":["cosmosdb_cassandra_keyspace_name","cosmosdb_mongo_database_name","cosmosdb_sql_database_name"],"required_with":["cosmosdb_gremlin_graph_name"]},"cosmosdb_gremlin_graph_name":{"type":"string","optional":true,"conflicts_with":["cosmosdb_cassandra_keyspace_name","cosmosdb_mongo_database_name","cosmosdb_sql_database_name"],"required_with":["cosmosdb_gremlin_database_name"]},"cosmosdb_mongo_database_name":{"type":"string","optional":true,"conflicts_with":["cosmosdb_cassandra_keyspace_name","cosmosdb_gremlin_database_name","cosmosdb_gremlin_graph_name","cosmosdb_sql_database_name"]},"cosmosdb_sql_database_name":{"type":"string","optional":true,"conflicts_with":["cosmosdb_cassandra_keyspace_name","cosmosdb_gremlin_database_name","cosmosdb_gremlin_graph_name","cosmosdb_mongo_database_name"]},"name":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_app_dynamics_application_performance_monitoring":{"block":{"attributes":{"agent_account_access_key":{"type":"string","required":true},"agent_account_name":{"type":"string","required":true},"agent_application_name":{"type":"string","optional":true},"agent_node_name":{"type":"string","optional":true},"agent_tier_name":{"type":"string","optional":true},"agent_unique_host_id":{"type":"string","optional":true},"controller_host_name":{"type":"string","required":true},"controller_port":{"type":"number","optional":true},"controller_ssl_enabled":{"type":"bool","optional":true},"globally_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_app_mysql_association":{"block":{"attributes":{"database_name":{"type":"string","required":true},"mysql_server_id":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true},"username":{"type":"string","required":true}}}},"azurerm_spring_cloud_app_redis_association":{"block":{"attributes":{"name":{"type":"string","required":true},"redis_access_key":{"type":"string","required":true},"redis_cache_id":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true},"ssl_enabled":{"type":"bool","optional":true,"default":true}}}},"azurerm_spring_cloud_application_insights_application_performance_monitoring":{"block":{"attributes":{"connection_string":{"type":"string","optional":true},"globally_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"role_instance":{"type":"string","optional":true},"role_name":{"type":"string","optional":true},"sampling_percentage":{"type":"number","optional":true},"sampling_requests_per_second":{"type":"number","optional":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_application_live_view":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_build_deployment":{"block":{"attributes":{"addon_json":{"type":"string","optional":true,"computed":true},"application_performance_monitoring_ids":{"type":["list","string"],"optional":true},"build_result_id":{"type":"string","required":true},"environment_variables":{"type":["map","string"],"optional":true},"instance_count":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true}},"block_types":{"quota":{"nesting_mode":3,"block":{"attributes":{"cpu":{"type":"string","optional":true,"computed":true},"memory":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_spring_cloud_build_pack_binding":{"block":{"attributes":{"binding_type":{"type":"string","optional":true},"name":{"type":"string","required":true},"spring_cloud_builder_id":{"type":"string","required":true}},"block_types":{"launch":{"nesting_mode":3,"block":{"attributes":{"properties":{"type":["map","string"],"optional":true},"secrets":{"type":["map","string"],"optional":true}}},"optional":true}}}},"azurerm_spring_cloud_builder":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}},"block_types":{"build_pack_group":{"nesting_mode":4,"block":{"attributes":{"build_pack_ids":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true}}},"required":true},"stack":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true}}}},"azurerm_spring_cloud_certificate":{"block":{"attributes":{"certificate_content":{"type":"string","optional":true,"at_least_one_of":["key_vault_certificate_id","certificate_content"]},"exclude_private_key":{"type":"bool","optional":true},"key_vault_certificate_id":{"type":"string","optional":true,"at_least_one_of":["key_vault_certificate_id","certificate_content"]},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"service_name":{"type":"string","required":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_spring_cloud_configuration_service":{"block":{"attributes":{"generation":{"type":"string","optional":true},"name":{"type":"string","required":true},"refresh_interval_in_seconds":{"type":"number","optional":true},"spring_cloud_service_id":{"type":"string","required":true}},"block_types":{"repository":{"nesting_mode":3,"block":{"attributes":{"ca_certificate_id":{"type":"string","optional":true},"host_key":{"type":"string","optional":true},"host_key_algorithm":{"type":"string","optional":true},"label":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"patterns":{"type":["set","string"],"required":true},"private_key":{"type":"string","optional":true},"search_paths":{"type":["set","string"],"optional":true},"strict_host_key_checking":{"type":"bool","optional":true},"uri":{"type":"string","required":true},"username":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_spring_cloud_connection":{"block":{"attributes":{"client_type":{"type":"string","optional":true,"default":"none"},"name":{"type":"string","required":true},"spring_cloud_id":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"vnet_solution":{"type":"string","optional":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"client_id":{"type":"string","optional":true},"name":{"type":"string","optional":true},"principal_id":{"type":"string","optional":true},"secret":{"type":"string","optional":true},"subscription_id":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true},"secret_store":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_spring_cloud_container_deployment":{"block":{"attributes":{"addon_json":{"type":"string","optional":true,"computed":true},"application_performance_monitoring_ids":{"type":["list","string"],"optional":true},"arguments":{"type":["list","string"],"optional":true},"commands":{"type":["list","string"],"optional":true},"environment_variables":{"type":["map","string"],"optional":true},"image":{"type":"string","required":true},"instance_count":{"type":"number","optional":true,"default":1},"language_framework":{"type":"string","optional":true},"name":{"type":"string","required":true},"server":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true}},"block_types":{"quota":{"nesting_mode":3,"block":{"attributes":{"cpu":{"type":"string","optional":true,"computed":true},"memory":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_spring_cloud_custom_domain":{"block":{"attributes":{"certificate_name":{"type":"string","optional":true,"required_with":["thumbprint"]},"name":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true},"thumbprint":{"type":"string","optional":true,"required_with":["certificate_name"]}}}},"azurerm_spring_cloud_customized_accelerator":{"block":{"attributes":{"accelerator_tags":{"type":["list","string"],"optional":true},"accelerator_type":{"type":"string","optional":true,"default":"Accelerator"},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"icon_url":{"type":"string","optional":true},"name":{"type":"string","required":true},"spring_cloud_accelerator_id":{"type":"string","required":true}},"block_types":{"git_repository":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","optional":true,"exactly_one_of":["git_repository.0.branch","git_repository.0.commit","git_repository.0.git_tag"]},"ca_certificate_id":{"type":"string","optional":true},"commit":{"type":"string","optional":true,"exactly_one_of":["git_repository.0.branch","git_repository.0.commit","git_repository.0.git_tag"]},"git_tag":{"type":"string","optional":true,"exactly_one_of":["git_repository.0.branch","git_repository.0.commit","git_repository.0.git_tag"]},"interval_in_seconds":{"type":"number","optional":true},"path":{"type":"string","optional":true},"url":{"type":"string","required":true}},"block_types":{"basic_auth":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true,"conflicts_with":["git_repository.0.ssh_auth"]},"ssh_auth":{"nesting_mode":3,"block":{"attributes":{"host_key":{"type":"string","optional":true},"host_key_algorithm":{"type":"string","optional":true},"private_key":{"type":"string","required":true}}},"optional":true,"conflicts_with":["git_repository.0.basic_auth"]}}},"required":true}}}},"azurerm_spring_cloud_dev_tool_portal":{"block":{"attributes":{"application_accelerator_enabled":{"type":"bool","optional":true,"computed":true},"application_live_view_enabled":{"type":"bool","optional":true,"computed":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true},"spring_cloud_service_id":{"type":"string","required":true}},"block_types":{"sso":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true},"client_secret":{"type":"string","optional":true},"metadata_url":{"type":"string","optional":true},"scope":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_spring_cloud_dynatrace_application_performance_monitoring":{"block":{"attributes":{"api_token":{"type":"string","optional":true},"api_url":{"type":"string","optional":true},"connection_point":{"type":"string","required":true},"environment_id":{"type":"string","optional":true},"globally_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true},"tenant":{"type":"string","required":true},"tenant_token":{"type":"string","required":true}}}},"azurerm_spring_cloud_elastic_application_performance_monitoring":{"block":{"attributes":{"application_packages":{"type":["list","string"],"required":true},"globally_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"server_url":{"type":"string","required":true},"service_name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_gateway":{"block":{"attributes":{"application_performance_monitoring_ids":{"type":["list","string"],"optional":true},"application_performance_monitoring_types":{"type":["list","string"],"optional":true},"environment_variables":{"type":["map","string"],"optional":true},"https_only":{"type":"bool","optional":true},"instance_count":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true},"sensitive_environment_variables":{"type":["map","string"],"optional":true},"spring_cloud_service_id":{"type":"string","required":true},"url":{"type":"string","computed":true}},"block_types":{"api_metadata":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"documentation_url":{"type":"string","optional":true},"server_url":{"type":"string","optional":true},"title":{"type":"string","optional":true},"version":{"type":"string","optional":true}}},"optional":true},"client_authorization":{"nesting_mode":3,"block":{"attributes":{"certificate_ids":{"type":["list","string"],"optional":true},"verification_enabled":{"type":"bool","optional":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["set","string"],"optional":true},"allowed_methods":{"type":["set","string"],"optional":true},"allowed_origin_patterns":{"type":["set","string"],"optional":true},"allowed_origins":{"type":["set","string"],"optional":true},"credentials_allowed":{"type":"bool","optional":true},"exposed_headers":{"type":["set","string"],"optional":true},"max_age_seconds":{"type":"number","optional":true}}},"optional":true},"local_response_cache_per_instance":{"nesting_mode":3,"block":{"attributes":{"size":{"type":"string","optional":true},"time_to_live":{"type":"string","optional":true}}},"optional":true,"conflicts_with":["local_response_cache_per_route"]},"local_response_cache_per_route":{"nesting_mode":3,"block":{"attributes":{"size":{"type":"string","optional":true},"time_to_live":{"type":"string","optional":true}}},"optional":true,"conflicts_with":["local_response_cache_per_instance"]},"quota":{"nesting_mode":3,"block":{"attributes":{"cpu":{"type":"string","optional":true,"default":"1"},"memory":{"type":"string","optional":true,"default":"2Gi"}}},"optional":true,"computed":true},"sso":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true},"client_secret":{"type":"string","optional":true},"issuer_uri":{"type":"string","optional":true},"scope":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_spring_cloud_gateway_custom_domain":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_gateway_id":{"type":"string","required":true},"thumbprint":{"type":"string","optional":true}}}},"azurerm_spring_cloud_gateway_route_config":{"block":{"attributes":{"filters":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"predicates":{"type":["set","string"],"optional":true},"protocol":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","optional":true},"spring_cloud_gateway_id":{"type":"string","required":true},"sso_validation_enabled":{"type":"bool","optional":true}},"block_types":{"open_api":{"nesting_mode":3,"block":{"attributes":{"uri":{"type":"string","optional":true}}},"optional":true},"route":{"nesting_mode":4,"block":{"attributes":{"classification_tags":{"type":["set","string"],"optional":true},"description":{"type":"string","optional":true},"filters":{"type":["set","string"],"optional":true},"order":{"type":"number","required":true},"predicates":{"type":["set","string"],"optional":true},"sso_validation_enabled":{"type":"bool","optional":true},"title":{"type":"string","optional":true},"token_relay":{"type":"bool","optional":true},"uri":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_spring_cloud_java_deployment":{"block":{"attributes":{"environment_variables":{"type":["map","string"],"optional":true},"instance_count":{"type":"number","optional":true,"default":1},"jvm_options":{"type":"string","optional":true},"name":{"type":"string","required":true},"runtime_version":{"type":"string","optional":true,"default":"Java_8"},"spring_cloud_app_id":{"type":"string","required":true}},"block_types":{"quota":{"nesting_mode":3,"block":{"attributes":{"cpu":{"type":"string","optional":true,"computed":true},"memory":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_spring_cloud_new_relic_application_performance_monitoring":{"block":{"attributes":{"agent_enabled":{"type":"bool","optional":true,"default":true},"app_name":{"type":"string","required":true},"app_server_port":{"type":"number","optional":true},"audit_mode_enabled":{"type":"bool","optional":true},"auto_app_naming_enabled":{"type":"bool","optional":true},"auto_transaction_naming_enabled":{"type":"bool","optional":true,"default":true},"custom_tracing_enabled":{"type":"bool","optional":true,"default":true},"globally_enabled":{"type":"bool","optional":true},"labels":{"type":["map","string"],"optional":true},"license_key":{"type":"string","required":true},"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_service":{"block":{"attributes":{"build_agent_pool_size":{"type":"string","optional":true},"location":{"type":"string","required":true},"log_stream_public_endpoint_enabled":{"type":"bool","optional":true},"managed_environment_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"outbound_public_ip_addresses":{"type":["list","string"],"computed":true},"required_network_traffic_rules":{"type":["list",["object",{"direction":"string","fqdns":["list","string"],"ip_addresses":["list","string"],"port":"number","protocol":"string"}]],"computed":true},"resource_group_name":{"type":"string","required":true},"service_registry_enabled":{"type":"bool","optional":true},"service_registry_id":{"type":"string","computed":true},"sku_name":{"type":"string","optional":true,"default":"S0"},"sku_tier":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"zone_redundant":{"type":"bool","optional":true,"default":false}},"block_types":{"config_server_git_setting":{"nesting_mode":3,"block":{"attributes":{"label":{"type":"string","optional":true},"search_paths":{"type":["list","string"],"optional":true},"uri":{"type":"string","required":true}},"block_types":{"http_basic_auth":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true,"conflicts_with":["config_server_git_setting.0.ssh_auth"]},"repository":{"nesting_mode":3,"block":{"attributes":{"label":{"type":"string","optional":true},"name":{"type":"string","required":true},"pattern":{"type":["list","string"],"optional":true},"search_paths":{"type":["list","string"],"optional":true},"uri":{"type":"string","required":true}},"block_types":{"http_basic_auth":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"ssh_auth":{"nesting_mode":3,"block":{"attributes":{"host_key":{"type":"string","optional":true},"host_key_algorithm":{"type":"string","optional":true},"private_key":{"type":"string","required":true},"strict_host_key_checking_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}},"optional":true},"ssh_auth":{"nesting_mode":3,"block":{"attributes":{"host_key":{"type":"string","optional":true},"host_key_algorithm":{"type":"string","optional":true},"private_key":{"type":"string","required":true},"strict_host_key_checking_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true,"conflicts_with":["config_server_git_setting.0.http_basic_auth"]}}},"optional":true},"container_registry":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"default_build_service":{"nesting_mode":3,"block":{"attributes":{"container_registry_name":{"type":"string","optional":true}}},"optional":true},"marketplace":{"nesting_mode":3,"block":{"attributes":{"plan":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true,"computed":true},"network":{"nesting_mode":3,"block":{"attributes":{"app_network_resource_group":{"type":"string","optional":true,"computed":true},"app_subnet_id":{"type":"string","required":true},"cidr_ranges":{"type":["list","string"],"required":true},"outbound_type":{"type":"string","optional":true,"default":"loadBalancer"},"read_timeout_seconds":{"type":"number","optional":true},"service_runtime_network_resource_group":{"type":"string","optional":true,"computed":true},"service_runtime_subnet_id":{"type":"string","required":true}}},"optional":true},"trace":{"nesting_mode":3,"block":{"attributes":{"connection_string":{"type":"string","optional":true},"sample_rate":{"type":"number","optional":true,"default":10}}},"optional":true}}}},"azurerm_spring_cloud_storage":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true},"storage_account_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true}}}},"azurerm_ssh_public_key":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_key":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_stack_hci_cluster":{"block":{"attributes":{"automanage_configuration_id":{"type":"string","optional":true},"client_id":{"type":"string","optional":true},"cloud_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_provider_object_id":{"type":"string","computed":true},"service_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","optional":true,"computed":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_stack_hci_deployment_setting":{"block":{"attributes":{"arc_resource_ids":{"type":["list","string"],"required":true},"stack_hci_cluster_id":{"type":"string","required":true},"version":{"type":"string","required":true}},"block_types":{"scale_unit":{"nesting_mode":3,"block":{"attributes":{"active_directory_organizational_unit_path":{"type":"string","required":true},"bitlocker_boot_volume_enabled":{"type":"bool","optional":true,"default":true},"bitlocker_data_volume_enabled":{"type":"bool","optional":true,"default":true},"credential_guard_enabled":{"type":"bool","optional":true,"default":false},"domain_fqdn":{"type":"string","required":true},"drift_control_enabled":{"type":"bool","optional":true,"default":true},"drtm_protection_enabled":{"type":"bool","optional":true,"default":true},"episodic_data_upload_enabled":{"type":"bool","optional":true,"default":true},"eu_location_enabled":{"type":"bool","optional":true,"default":false},"hvci_protection_enabled":{"type":"bool","optional":true,"default":true},"name_prefix":{"type":"string","required":true},"secrets_location":{"type":"string","required":true},"side_channel_mitigation_enabled":{"type":"bool","optional":true,"default":true},"smb_cluster_encryption_enabled":{"type":"bool","optional":true,"default":false},"smb_signing_enabled":{"type":"bool","optional":true,"default":true},"streaming_data_client_enabled":{"type":"bool","optional":true,"default":true},"wdac_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"cluster":{"nesting_mode":3,"block":{"attributes":{"azure_service_endpoint":{"type":"string","required":true},"cloud_account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"witness_path":{"type":"string","required":true},"witness_type":{"type":"string","required":true}}},"required":true},"host_network":{"nesting_mode":3,"block":{"attributes":{"storage_auto_ip_enabled":{"type":"bool","optional":true,"default":true},"storage_connectivity_switchless_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"intent":{"nesting_mode":3,"block":{"attributes":{"adapter":{"type":["list","string"],"required":true},"adapter_property_override_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"qos_policy_override_enabled":{"type":"bool","optional":true,"default":false},"traffic_type":{"type":["list","string"],"required":true},"virtual_switch_configuration_override_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"adapter_property_override":{"nesting_mode":3,"block":{"attributes":{"jumbo_packet":{"type":"string","optional":true},"network_direct":{"type":"string","optional":true},"network_direct_technology":{"type":"string","optional":true}}},"optional":true},"qos_policy_override":{"nesting_mode":3,"block":{"attributes":{"bandwidth_percentage_smb":{"type":"string","optional":true},"priority_value8021_action_cluster":{"type":"string","optional":true},"priority_value8021_action_smb":{"type":"string","optional":true}}},"optional":true},"virtual_switch_configuration_override":{"nesting_mode":3,"block":{"attributes":{"enable_iov":{"type":"string","optional":true},"load_balancing_algorithm":{"type":"string","optional":true}}},"optional":true}}},"required":true},"storage_network":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"network_adapter_name":{"type":"string","required":true},"vlan_id":{"type":"string","required":true}}},"required":true}}},"required":true},"infrastructure_network":{"nesting_mode":3,"block":{"attributes":{"dhcp_enabled":{"type":"bool","optional":true,"default":false},"dns_server":{"type":["list","string"],"required":true},"gateway":{"type":"string","required":true},"subnet_mask":{"type":"string","required":true}},"block_types":{"ip_pool":{"nesting_mode":3,"block":{"attributes":{"ending_address":{"type":"string","required":true},"starting_address":{"type":"string","required":true}}},"required":true}}},"required":true},"optional_service":{"nesting_mode":3,"block":{"attributes":{"custom_location":{"type":"string","required":true}}},"required":true},"physical_node":{"nesting_mode":3,"block":{"attributes":{"ipv4_address":{"type":"string","required":true},"name":{"type":"string","required":true}}},"required":true},"storage":{"nesting_mode":3,"block":{"attributes":{"configuration_mode":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_stack_hci_extension":{"block":{"attributes":{"arc_setting_id":{"type":"string","required":true},"auto_upgrade_minor_version_enabled":{"type":"bool","optional":true,"default":true},"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","optional":true}}}},"azurerm_stack_hci_logical_network":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"dns_servers":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_switch_name":{"type":"string","required":true}},"block_types":{"subnet":{"nesting_mode":3,"block":{"attributes":{"address_prefix":{"type":"string","optional":true},"ip_allocation_method":{"type":"string","required":true},"vlan_id":{"type":"number","optional":true}},"block_types":{"ip_pool":{"nesting_mode":3,"block":{"attributes":{"end":{"type":"string","required":true},"start":{"type":"string","required":true}}},"optional":true},"route":{"nesting_mode":3,"block":{"attributes":{"address_prefix":{"type":"string","required":true},"name":{"type":"string","optional":true},"next_hop_ip_address":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_stack_hci_marketplace_gallery_image":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"hyperv_generation":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"os_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_path_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","required":true}},"block_types":{"identifier":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true}}},"required":true}}}},"azurerm_stack_hci_network_interface":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"dns_servers":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"mac_address":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"gateway":{"type":"string","computed":true},"prefix_length":{"type":"string","computed":true},"private_ip_address":{"type":"string","optional":true},"subnet_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_stack_hci_storage_path":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"path":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_stack_hci_virtual_hard_disk":{"block":{"attributes":{"block_size_in_bytes":{"type":"number","optional":true},"custom_location_id":{"type":"string","required":true},"disk_file_format":{"type":"string","optional":true},"disk_size_in_gb":{"type":"number","required":true},"dynamic_enabled":{"type":"bool","optional":true,"default":false},"hyperv_generation":{"type":"string","optional":true},"location":{"type":"string","required":true},"logical_sector_in_bytes":{"type":"number","optional":true},"name":{"type":"string","required":true},"physical_sector_in_bytes":{"type":"number","optional":true},"resource_group_name":{"type":"string","required":true},"storage_path_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_static_site":{"block":{"attributes":{"api_key":{"type":"string","computed":true},"app_settings":{"type":["map","string"],"optional":true},"default_host_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_size":{"type":"string","optional":true,"default":"Free"},"sku_tier":{"type":"string","optional":true,"default":"Free"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_static_site_custom_domain":{"block":{"attributes":{"domain_name":{"type":"string","required":true},"static_site_id":{"type":"string","required":true},"validation_token":{"type":"string","computed":true},"validation_type":{"type":"string","optional":true}}}},"azurerm_static_web_app":{"block":{"attributes":{"api_key":{"type":"string","computed":true},"app_settings":{"type":["map","string"],"optional":true},"configuration_file_changes_enabled":{"type":"bool","optional":true,"default":true},"default_host_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"preview_environments_enabled":{"type":"bool","optional":true,"default":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"repository_branch":{"type":"string","optional":true,"required_with":["repository_url","repository_token"]},"repository_token":{"type":"string","optional":true,"required_with":["repository_url","repository_branch"]},"repository_url":{"type":"string","optional":true,"required_with":["repository_token","repository_branch"]},"resource_group_name":{"type":"string","required":true},"sku_size":{"type":"string","optional":true,"default":"Free"},"sku_tier":{"type":"string","optional":true,"default":"Free"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"basic_auth":{"nesting_mode":3,"block":{"attributes":{"environments":{"type":"string","required":true},"password":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_static_web_app_custom_domain":{"block":{"attributes":{"domain_name":{"type":"string","required":true},"static_web_app_id":{"type":"string","required":true},"validation_token":{"type":"string","computed":true},"validation_type":{"type":"string","required":true}}}},"azurerm_static_web_app_function_app_registration":{"block":{"attributes":{"function_app_id":{"type":"string","required":true},"static_web_app_id":{"type":"string","required":true}}}},"azurerm_storage_account":{"block":{"attributes":{"access_tier":{"type":"string","optional":true,"computed":true},"account_kind":{"type":"string","optional":true,"default":"StorageV2"},"account_replication_type":{"type":"string","required":true},"account_tier":{"type":"string","required":true},"allow_nested_items_to_be_public":{"type":"bool","optional":true,"default":true},"allowed_copy_scope":{"type":"string","optional":true},"cross_tenant_replication_enabled":{"type":"bool","optional":true,"default":false},"default_to_oauth_authentication":{"type":"bool","optional":true,"default":false},"dns_endpoint_type":{"type":"string","optional":true,"default":"Standard"},"edge_zone":{"type":"string","optional":true},"https_traffic_only_enabled":{"type":"bool","optional":true,"default":true},"infrastructure_encryption_enabled":{"type":"bool","optional":true,"default":false},"is_hns_enabled":{"type":"bool","optional":true,"default":false},"large_file_share_enabled":{"type":"bool","optional":true,"computed":true},"local_user_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"min_tls_version":{"type":"string","optional":true,"default":"TLS1_2"},"name":{"type":"string","required":true},"nfsv3_enabled":{"type":"bool","optional":true,"default":false},"primary_access_key":{"type":"string","computed":true},"primary_blob_connection_string":{"type":"string","computed":true},"primary_blob_endpoint":{"type":"string","computed":true},"primary_blob_host":{"type":"string","computed":true},"primary_blob_internet_endpoint":{"type":"string","computed":true},"primary_blob_internet_host":{"type":"string","computed":true},"primary_blob_microsoft_endpoint":{"type":"string","computed":true},"primary_blob_microsoft_host":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"primary_dfs_endpoint":{"type":"string","computed":true},"primary_dfs_host":{"type":"string","computed":true},"primary_dfs_internet_endpoint":{"type":"string","computed":true},"primary_dfs_internet_host":{"type":"string","computed":true},"primary_dfs_microsoft_endpoint":{"type":"string","computed":true},"primary_dfs_microsoft_host":{"type":"string","computed":true},"primary_file_endpoint":{"type":"string","computed":true},"primary_file_host":{"type":"string","computed":true},"primary_file_internet_endpoint":{"type":"string","computed":true},"primary_file_internet_host":{"type":"string","computed":true},"primary_file_microsoft_endpoint":{"type":"string","computed":true},"primary_file_microsoft_host":{"type":"string","computed":true},"primary_location":{"type":"string","computed":true},"primary_queue_endpoint":{"type":"string","computed":true},"primary_queue_host":{"type":"string","computed":true},"primary_queue_microsoft_endpoint":{"type":"string","computed":true},"primary_queue_microsoft_host":{"type":"string","computed":true},"primary_table_endpoint":{"type":"string","computed":true},"primary_table_host":{"type":"string","computed":true},"primary_table_microsoft_endpoint":{"type":"string","computed":true},"primary_table_microsoft_host":{"type":"string","computed":true},"primary_web_endpoint":{"type":"string","computed":true},"primary_web_host":{"type":"string","computed":true},"primary_web_internet_endpoint":{"type":"string","computed":true},"primary_web_internet_host":{"type":"string","computed":true},"primary_web_microsoft_endpoint":{"type":"string","computed":true},"primary_web_microsoft_host":{"type":"string","computed":true},"provisioned_billing_model_version":{"type":"string","optional":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"queue_encryption_key_type":{"type":"string","optional":true,"default":"Service"},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_blob_connection_string":{"type":"string","computed":true},"secondary_blob_endpoint":{"type":"string","computed":true},"secondary_blob_host":{"type":"string","computed":true},"secondary_blob_internet_endpoint":{"type":"string","computed":true},"secondary_blob_internet_host":{"type":"string","computed":true},"secondary_blob_microsoft_endpoint":{"type":"string","computed":true},"secondary_blob_microsoft_host":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_dfs_endpoint":{"type":"string","computed":true},"secondary_dfs_host":{"type":"string","computed":true},"secondary_dfs_internet_endpoint":{"type":"string","computed":true},"secondary_dfs_internet_host":{"type":"string","computed":true},"secondary_dfs_microsoft_endpoint":{"type":"string","computed":true},"secondary_dfs_microsoft_host":{"type":"string","computed":true},"secondary_file_endpoint":{"type":"string","computed":true},"secondary_file_host":{"type":"string","computed":true},"secondary_file_internet_endpoint":{"type":"string","computed":true},"secondary_file_internet_host":{"type":"string","computed":true},"secondary_file_microsoft_endpoint":{"type":"string","computed":true},"secondary_file_microsoft_host":{"type":"string","computed":true},"secondary_location":{"type":"string","computed":true},"secondary_queue_endpoint":{"type":"string","computed":true},"secondary_queue_host":{"type":"string","computed":true},"secondary_queue_microsoft_endpoint":{"type":"string","computed":true},"secondary_queue_microsoft_host":{"type":"string","computed":true},"secondary_table_endpoint":{"type":"string","computed":true},"secondary_table_host":{"type":"string","computed":true},"secondary_table_microsoft_endpoint":{"type":"string","computed":true},"secondary_table_microsoft_host":{"type":"string","computed":true},"secondary_web_endpoint":{"type":"string","computed":true},"secondary_web_host":{"type":"string","computed":true},"secondary_web_internet_endpoint":{"type":"string","computed":true},"secondary_web_internet_host":{"type":"string","computed":true},"secondary_web_microsoft_endpoint":{"type":"string","computed":true},"secondary_web_microsoft_host":{"type":"string","computed":true},"sftp_enabled":{"type":"bool","optional":true,"default":false},"shared_access_key_enabled":{"type":"bool","optional":true,"default":true},"table_encryption_key_type":{"type":"string","optional":true,"default":"Service"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"azure_files_authentication":{"nesting_mode":3,"block":{"attributes":{"default_share_level_permission":{"type":"string","optional":true,"default":"None"},"directory_type":{"type":"string","required":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"domain_guid":{"type":"string","required":true},"domain_name":{"type":"string","required":true},"domain_sid":{"type":"string","optional":true},"forest_name":{"type":"string","optional":true},"netbios_domain_name":{"type":"string","optional":true},"storage_sid":{"type":"string","optional":true}}},"optional":true,"computed":true}}},"optional":true},"blob_properties":{"nesting_mode":3,"block":{"attributes":{"change_feed_enabled":{"type":"bool","optional":true,"default":false},"change_feed_retention_in_days":{"type":"number","optional":true},"default_service_version":{"type":"string","optional":true,"computed":true},"last_access_time_enabled":{"type":"bool","optional":true,"default":false},"versioning_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"container_delete_retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true,"default":7}}},"optional":true},"cors_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["list","string"],"required":true},"allowed_methods":{"type":["list","string"],"required":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"required":true},"max_age_in_seconds":{"type":"number","required":true}}},"optional":true},"delete_retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true,"default":7},"permanent_delete_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"restore_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","required":true}}},"optional":true,"required_with":["blob_properties.0.delete_retention_policy"]}}},"optional":true,"computed":true},"custom_domain":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"use_subdomain":{"type":"bool","optional":true,"default":false}}},"optional":true},"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"key_vault_key_id":{"type":"string","optional":true,"exactly_one_of":["customer_managed_key.0.managed_hsm_key_id","customer_managed_key.0.key_vault_key_id"]},"managed_hsm_key_id":{"type":"string","optional":true,"exactly_one_of":["customer_managed_key.0.managed_hsm_key_id","customer_managed_key.0.key_vault_key_id"]},"user_assigned_identity_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"immutability_policy":{"nesting_mode":3,"block":{"attributes":{"allow_protected_append_writes":{"type":"bool","required":true},"period_since_creation_in_days":{"type":"number","required":true},"state":{"type":"string","required":true}}},"optional":true},"network_rules":{"nesting_mode":3,"block":{"attributes":{"bypass":{"type":["set","string"],"optional":true,"computed":true},"default_action":{"type":"string","required":true},"ip_rules":{"type":["set","string"],"optional":true,"computed":true},"virtual_network_subnet_ids":{"type":["set","string"],"optional":true,"computed":true}},"block_types":{"private_link_access":{"nesting_mode":3,"block":{"attributes":{"endpoint_resource_id":{"type":"string","required":true},"endpoint_tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true}}},"optional":true,"computed":true},"queue_properties":{"nesting_mode":3,"block":{"block_types":{"cors_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["list","string"],"required":true},"allowed_methods":{"type":["list","string"],"required":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"required":true},"max_age_in_seconds":{"type":"number","required":true}}},"optional":true},"hour_metrics":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"include_apis":{"type":"bool","optional":true},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true}}},"optional":true,"computed":true},"logging":{"nesting_mode":3,"block":{"attributes":{"delete":{"type":"bool","required":true},"read":{"type":"bool","required":true},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true},"write":{"type":"bool","required":true}}},"optional":true,"computed":true},"minute_metrics":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"include_apis":{"type":"bool","optional":true},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"routing":{"nesting_mode":3,"block":{"attributes":{"choice":{"type":"string","optional":true,"default":"MicrosoftRouting"},"publish_internet_endpoints":{"type":"bool","optional":true,"default":false},"publish_microsoft_endpoints":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true},"sas_policy":{"nesting_mode":3,"block":{"attributes":{"expiration_action":{"type":"string","optional":true,"default":"Log"},"expiration_period":{"type":"string","required":true}}},"optional":true},"share_properties":{"nesting_mode":3,"block":{"block_types":{"cors_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["list","string"],"required":true},"allowed_methods":{"type":["list","string"],"required":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"required":true},"max_age_in_seconds":{"type":"number","required":true}}},"optional":true},"retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true,"default":7}}},"optional":true},"smb":{"nesting_mode":3,"block":{"attributes":{"authentication_types":{"type":["set","string"],"optional":true},"channel_encryption_type":{"type":["set","string"],"optional":true},"kerberos_ticket_encryption_type":{"type":["set","string"],"optional":true},"multichannel_enabled":{"type":"bool","optional":true,"default":false},"versions":{"type":["set","string"],"optional":true}}},"optional":true}}},"optional":true,"computed":true},"static_website":{"nesting_mode":3,"block":{"attributes":{"error_404_document":{"type":"string","optional":true},"index_document":{"type":"string","optional":true}}},"optional":true,"computed":true}}}},"azurerm_storage_account_customer_managed_key":{"block":{"attributes":{"federated_identity_client_id":{"type":"string","optional":true,"required_with":["user_assigned_identity_id"]},"key_name":{"type":"string","required":true},"key_vault_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_id","key_vault_uri"]},"key_vault_uri":{"type":"string","optional":true,"computed":true,"exactly_one_of":["managed_hsm_key_id","key_vault_id","key_vault_uri"]},"key_version":{"type":"string","optional":true},"managed_hsm_key_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_id","key_vault_uri"]},"storage_account_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}}},"azurerm_storage_account_local_user":{"block":{"attributes":{"home_directory":{"type":"string","optional":true},"name":{"type":"string","required":true},"password":{"type":"string","computed":true},"sid":{"type":"string","computed":true},"ssh_key_enabled":{"type":"bool","optional":true,"default":false,"at_least_one_of":["ssh_key_enabled","ssh_password_enabled"]},"ssh_password_enabled":{"type":"bool","optional":true,"default":false,"at_least_one_of":["ssh_key_enabled","ssh_password_enabled"]},"storage_account_id":{"type":"string","required":true}},"block_types":{"permission_scope":{"nesting_mode":3,"block":{"attributes":{"resource_name":{"type":"string","required":true},"service":{"type":"string","required":true}},"block_types":{"permissions":{"nesting_mode":3,"block":{"attributes":{"create":{"type":"bool","optional":true,"default":false},"delete":{"type":"bool","optional":true,"default":false},"list":{"type":"bool","optional":true,"default":false},"read":{"type":"bool","optional":true,"default":false},"write":{"type":"bool","optional":true,"default":false}}},"required":true}}},"optional":true},"ssh_authorized_key":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"key":{"type":"string","required":true}}},"optional":true,"required_with":["ssh_key_enabled"]}}}},"azurerm_storage_account_network_rules":{"block":{"attributes":{"bypass":{"type":["set","string"],"optional":true,"computed":true},"default_action":{"type":"string","required":true},"ip_rules":{"type":["set","string"],"optional":true},"storage_account_id":{"type":"string","required":true},"virtual_network_subnet_ids":{"type":["set","string"],"optional":true}},"block_types":{"private_link_access":{"nesting_mode":3,"block":{"attributes":{"endpoint_resource_id":{"type":"string","required":true},"endpoint_tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true}}}},"azurerm_storage_account_queue_properties":{"block":{"attributes":{"storage_account_id":{"type":"string","required":true}},"block_types":{"cors_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["list","string"],"required":true},"allowed_methods":{"type":["list","string"],"required":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"required":true},"max_age_in_seconds":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["minute_metrics","hour_metrics","logging","cors_rule"]},"hour_metrics":{"nesting_mode":3,"block":{"attributes":{"include_apis":{"type":"bool","optional":true,"default":false},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true}}},"optional":true,"computed":true,"at_least_one_of":["minute_metrics","hour_metrics","logging","cors_rule"]},"logging":{"nesting_mode":3,"block":{"attributes":{"delete":{"type":"bool","required":true},"read":{"type":"bool","required":true},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true},"write":{"type":"bool","required":true}}},"optional":true,"computed":true,"at_least_one_of":["minute_metrics","hour_metrics","logging","cors_rule"]},"minute_metrics":{"nesting_mode":3,"block":{"attributes":{"include_apis":{"type":"bool","optional":true,"default":false},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true}}},"optional":true,"computed":true,"at_least_one_of":["minute_metrics","hour_metrics","logging","cors_rule"]}}}},"azurerm_storage_account_static_website":{"block":{"attributes":{"error_404_document":{"type":"string","optional":true,"at_least_one_of":["error_404_document","index_document"]},"index_document":{"type":"string","optional":true,"at_least_one_of":["error_404_document","index_document"]},"storage_account_id":{"type":"string","required":true}}}},"azurerm_storage_blob":{"block":{"attributes":{"access_tier":{"type":"string","optional":true,"computed":true},"cache_control":{"type":"string","optional":true},"content_md5":{"type":"string","optional":true,"conflicts_with":["source_uri"]},"content_type":{"type":"string","optional":true,"default":"application/octet-stream"},"encryption_scope":{"type":"string","optional":true},"metadata":{"type":["map","string"],"optional":true,"computed":true},"name":{"type":"string","required":true},"parallelism":{"type":"number","optional":true,"default":8},"size":{"type":"number","optional":true,"default":0},"source":{"type":"string","optional":true,"conflicts_with":["source_uri","source_content"]},"source_content":{"type":"string","optional":true,"conflicts_with":["source","source_uri"]},"source_uri":{"type":"string","optional":true,"conflicts_with":["source","source_content"]},"storage_account_name":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true},"type":{"type":"string","required":true},"url":{"type":"string","computed":true}}}},"azurerm_storage_blob_inventory_policy":{"block":{"attributes":{"storage_account_id":{"type":"string","required":true}},"block_types":{"rules":{"nesting_mode":4,"block":{"attributes":{"format":{"type":"string","required":true},"name":{"type":"string","required":true},"schedule":{"type":"string","required":true},"schema_fields":{"type":["list","string"],"required":true},"scope":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"blob_types":{"type":["set","string"],"required":true},"exclude_prefixes":{"type":["set","string"],"optional":true},"include_blob_versions":{"type":"bool","optional":true,"default":false},"include_deleted":{"type":"bool","optional":true,"default":false},"include_snapshots":{"type":"bool","optional":true,"default":false},"prefix_match":{"type":["set","string"],"optional":true}}},"optional":true}}},"required":true}}}},"azurerm_storage_container":{"block":{"attributes":{"container_access_type":{"type":"string","optional":true,"default":"private"},"default_encryption_scope":{"type":"string","optional":true,"computed":true},"encryption_scope_override_enabled":{"type":"bool","optional":true,"default":true,"required_with":["default_encryption_scope"]},"has_immutability_policy":{"type":"bool","computed":true},"has_legal_hold":{"type":"bool","computed":true},"metadata":{"type":["map","string"],"optional":true,"computed":true},"name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"storage_account_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_id","storage_account_name"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_id","storage_account_name"]}}}},"azurerm_storage_container_immutability_policy":{"block":{"attributes":{"immutability_period_in_days":{"type":"number","required":true},"locked":{"type":"bool","optional":true,"default":false},"protected_append_writes_all_enabled":{"type":"bool","optional":true,"default":false},"protected_append_writes_enabled":{"type":"bool","optional":true,"default":false},"storage_container_resource_manager_id":{"type":"string","required":true}}}},"azurerm_storage_data_lake_gen2_filesystem":{"block":{"attributes":{"default_encryption_scope":{"type":"string","optional":true,"computed":true},"group":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"owner":{"type":"string","optional":true,"computed":true},"properties":{"type":["map","string"],"optional":true},"storage_account_id":{"type":"string","required":true}},"block_types":{"ace":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","optional":true},"permissions":{"type":"string","required":true},"scope":{"type":"string","optional":true,"default":"access"},"type":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_storage_data_lake_gen2_path":{"block":{"attributes":{"filesystem_name":{"type":"string","required":true},"group":{"type":"string","optional":true,"computed":true},"owner":{"type":"string","optional":true,"computed":true},"path":{"type":"string","required":true},"resource":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}},"block_types":{"ace":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","optional":true},"permissions":{"type":"string","required":true},"scope":{"type":"string","optional":true,"default":"access"},"type":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_storage_encryption_scope":{"block":{"attributes":{"infrastructure_encryption_required":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"source":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}}},"azurerm_storage_management_policy":{"block":{"attributes":{"storage_account_id":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"name":{"type":"string","required":true}},"block_types":{"actions":{"nesting_mode":3,"block":{"block_types":{"base_blob":{"nesting_mode":3,"block":{"attributes":{"auto_tier_to_hot_from_cool_enabled":{"type":"bool","optional":true},"delete_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1},"delete_after_days_since_last_access_time_greater_than":{"type":"number","optional":true,"default":-1},"delete_after_days_since_modification_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_last_access_time_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_last_tier_change_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_modification_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cold_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cold_after_days_since_last_access_time_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cold_after_days_since_modification_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cool_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cool_after_days_since_last_access_time_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cool_after_days_since_modification_greater_than":{"type":"number","optional":true,"default":-1}}},"optional":true},"snapshot":{"nesting_mode":3,"block":{"attributes":{"change_tier_to_archive_after_days_since_creation":{"type":"number","optional":true,"default":-1},"change_tier_to_cool_after_days_since_creation":{"type":"number","optional":true,"default":-1},"delete_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_last_tier_change_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cold_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1}}},"optional":true},"version":{"nesting_mode":3,"block":{"attributes":{"change_tier_to_archive_after_days_since_creation":{"type":"number","optional":true,"default":-1},"change_tier_to_cool_after_days_since_creation":{"type":"number","optional":true,"default":-1},"delete_after_days_since_creation":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_last_tier_change_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cold_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1}}},"optional":true}}},"required":true},"filters":{"nesting_mode":3,"block":{"attributes":{"blob_types":{"type":["set","string"],"required":true},"prefix_match":{"type":["set","string"],"optional":true}},"block_types":{"match_blob_index_tag":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operation":{"type":"string","optional":true,"default":"=="},"value":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_storage_mover":{"block":{"attributes":{"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_storage_mover_agent":{"block":{"attributes":{"arc_virtual_machine_id":{"type":"string","required":true},"arc_virtual_machine_uuid":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"storage_mover_id":{"type":"string","required":true}}}},"azurerm_storage_mover_job_definition":{"block":{"attributes":{"agent_name":{"type":"string","optional":true},"copy_mode":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"source_name":{"type":"string","required":true},"source_sub_path":{"type":"string","optional":true},"storage_mover_project_id":{"type":"string","required":true},"target_name":{"type":"string","required":true},"target_sub_path":{"type":"string","optional":true}}}},"azurerm_storage_mover_project":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"storage_mover_id":{"type":"string","required":true}}}},"azurerm_storage_mover_source_endpoint":{"block":{"attributes":{"description":{"type":"string","optional":true},"export":{"type":"string","optional":true},"host":{"type":"string","required":true},"name":{"type":"string","required":true},"nfs_version":{"type":"string","optional":true,"default":"NFSauto"},"storage_mover_id":{"type":"string","required":true}}}},"azurerm_storage_mover_target_endpoint":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true},"storage_mover_id":{"type":"string","required":true}}}},"azurerm_storage_object_replication":{"block":{"attributes":{"destination_object_replication_id":{"type":"string","computed":true},"destination_storage_account_id":{"type":"string","required":true},"source_object_replication_id":{"type":"string","computed":true},"source_storage_account_id":{"type":"string","required":true}},"block_types":{"rules":{"nesting_mode":4,"block":{"attributes":{"copy_blobs_created_after":{"type":"string","optional":true,"default":"OnlyNewObjects"},"destination_container_name":{"type":"string","required":true},"filter_out_blobs_with_prefix":{"type":["set","string"],"optional":true},"name":{"type":"string","computed":true},"source_container_name":{"type":"string","required":true}}},"required":true}}}},"azurerm_storage_queue":{"block":{"attributes":{"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"storage_account_name":{"type":"string","required":true}}}},"azurerm_storage_share":{"block":{"attributes":{"access_tier":{"type":"string","optional":true,"computed":true},"enabled_protocol":{"type":"string","optional":true,"default":"SMB"},"metadata":{"type":["map","string"],"optional":true,"computed":true},"name":{"type":"string","required":true},"quota":{"type":"number","required":true},"resource_manager_id":{"type":"string","computed":true},"storage_account_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_account_id"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_account_id"]},"url":{"type":"string","computed":true}},"block_types":{"acl":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","required":true}},"block_types":{"access_policy":{"nesting_mode":3,"block":{"attributes":{"expiry":{"type":"string","optional":true},"permissions":{"type":"string","required":true},"start":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_storage_share_directory":{"block":{"attributes":{"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"storage_share_id":{"type":"string","required":true}}}},"azurerm_storage_share_file":{"block":{"attributes":{"content_disposition":{"type":"string","optional":true},"content_encoding":{"type":"string","optional":true},"content_length":{"type":"number","computed":true},"content_md5":{"type":"string","optional":true},"content_type":{"type":"string","optional":true,"default":"application/octet-stream"},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"path":{"type":"string","optional":true,"default":""},"source":{"type":"string","optional":true},"storage_share_id":{"type":"string","required":true}}}},"azurerm_storage_sync":{"block":{"attributes":{"incoming_traffic_policy":{"type":"string","optional":true,"default":"AllowAllTraffic"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"registered_servers":{"type":["list","string"],"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_storage_sync_cloud_endpoint":{"block":{"attributes":{"file_share_name":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"storage_account_tenant_id":{"type":"string","optional":true,"computed":true},"storage_sync_group_id":{"type":"string","required":true}}}},"azurerm_storage_sync_group":{"block":{"attributes":{"name":{"type":"string","required":true},"storage_sync_id":{"type":"string","required":true}}}},"azurerm_storage_sync_server_endpoint":{"block":{"attributes":{"cloud_tiering_enabled":{"type":"bool","optional":true,"default":false},"initial_download_policy":{"type":"string","optional":true,"default":"NamespaceThenModifiedFiles"},"local_cache_mode":{"type":"string","optional":true,"default":"UpdateLocallyCachedFiles"},"name":{"type":"string","required":true},"registered_server_id":{"type":"string","required":true},"server_local_path":{"type":"string","required":true},"storage_sync_group_id":{"type":"string","required":true},"tier_files_older_than_days":{"type":"number","optional":true},"volume_free_space_percent":{"type":"number","optional":true,"default":20}}}},"azurerm_storage_table":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"storage_account_name":{"type":"string","required":true}},"block_types":{"acl":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","required":true}},"block_types":{"access_policy":{"nesting_mode":3,"block":{"attributes":{"expiry":{"type":"string","required":true},"permissions":{"type":"string","required":true},"start":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_storage_table_entity":{"block":{"attributes":{"entity":{"type":["map","string"],"required":true},"partition_key":{"type":"string","required":true},"row_key":{"type":"string","required":true},"storage_table_id":{"type":"string","required":true}}}},"azurerm_stream_analytics_cluster":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"streaming_capacity":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_stream_analytics_function_javascript_uda":{"block":{"attributes":{"name":{"type":"string","required":true},"script":{"type":"string","required":true},"stream_analytics_job_id":{"type":"string","required":true}},"block_types":{"input":{"nesting_mode":3,"block":{"attributes":{"configuration_parameter":{"type":"bool","optional":true,"default":false},"type":{"type":"string","required":true}}},"required":true},"output":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_function_javascript_udf":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"script":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true}},"block_types":{"input":{"nesting_mode":3,"block":{"attributes":{"configuration_parameter":{"type":"bool","optional":true,"default":false},"type":{"type":"string","required":true}}},"required":true},"output":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_job":{"block":{"attributes":{"compatibility_level":{"type":"string","optional":true,"computed":true},"content_storage_policy":{"type":"string","optional":true,"default":"SystemAccount"},"data_locale":{"type":"string","optional":true,"default":"en-US"},"events_late_arrival_max_delay_in_seconds":{"type":"number","optional":true,"default":5},"events_out_of_order_max_delay_in_seconds":{"type":"number","optional":true,"default":0},"events_out_of_order_policy":{"type":"string","optional":true,"default":"Adjust"},"job_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"output_error_policy":{"type":"string","optional":true,"default":"Drop"},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","optional":true,"default":"Standard"},"stream_analytics_cluster_id":{"type":"string","optional":true},"streaming_units":{"type":"number","optional":true},"tags":{"type":["map","string"],"optional":true},"transformation_query":{"type":"string","required":true},"type":{"type":"string","optional":true,"default":"Cloud"}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"job_storage_account":{"nesting_mode":3,"block":{"attributes":{"account_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"}}},"optional":true}}}},"azurerm_stream_analytics_job_schedule":{"block":{"attributes":{"last_output_time":{"type":"string","computed":true},"start_mode":{"type":"string","required":true},"start_time":{"type":"string","optional":true,"computed":true},"stream_analytics_job_id":{"type":"string","required":true}}}},"azurerm_stream_analytics_job_storage_account":{"block":{"attributes":{"authentication_mode":{"type":"string","required":true},"storage_account_key":{"type":"string","optional":true},"storage_account_name":{"type":"string","required":true},"stream_analytics_job_id":{"type":"string","required":true}}}},"azurerm_stream_analytics_managed_private_endpoint":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"stream_analytics_cluster_name":{"type":"string","required":true},"subresource_name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_stream_analytics_output_blob":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"batch_max_wait_time":{"type":"string","optional":true},"batch_min_rows":{"type":"number","optional":true},"blob_write_mode":{"type":"string","optional":true,"default":"Append"},"date_format":{"type":"string","required":true},"name":{"type":"string","required":true},"path_pattern":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_key":{"type":"string","optional":true},"storage_account_name":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"time_format":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"format":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_output_cosmosdb":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"container_name":{"type":"string","required":true},"cosmosdb_account_key":{"type":"string","required":true},"cosmosdb_sql_database_id":{"type":"string","required":true},"document_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"partition_key":{"type":"string","optional":true},"stream_analytics_job_id":{"type":"string","required":true}}}},"azurerm_stream_analytics_output_eventhub":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"eventhub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"partition_key":{"type":"string","optional":true},"property_columns":{"type":["list","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"servicebus_namespace":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","optional":true},"shared_access_policy_name":{"type":"string","optional":true},"stream_analytics_job_name":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"format":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_output_function":{"block":{"attributes":{"api_key":{"type":"string","required":true},"batch_max_count":{"type":"number","optional":true,"default":100},"batch_max_in_bytes":{"type":"number","optional":true,"default":262144},"function_app":{"type":"string","required":true},"function_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true}}}},"azurerm_stream_analytics_output_mssql":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"database":{"type":"string","required":true},"max_batch_count":{"type":"number","optional":true,"default":10000},"max_writer_count":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"server":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"table":{"type":"string","required":true},"user":{"type":"string","optional":true}}}},"azurerm_stream_analytics_output_powerbi":{"block":{"attributes":{"dataset":{"type":"string","required":true},"group_id":{"type":"string","required":true},"group_name":{"type":"string","required":true},"name":{"type":"string","required":true},"stream_analytics_job_id":{"type":"string","required":true},"table":{"type":"string","required":true},"token_user_display_name":{"type":"string","optional":true},"token_user_principal_name":{"type":"string","optional":true}}}},"azurerm_stream_analytics_output_servicebus_queue":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"name":{"type":"string","required":true},"property_columns":{"type":["list","string"],"optional":true},"queue_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"servicebus_namespace":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","optional":true},"shared_access_policy_name":{"type":"string","optional":true},"stream_analytics_job_name":{"type":"string","required":true},"system_property_columns":{"type":["map","string"],"optional":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"format":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_output_servicebus_topic":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"name":{"type":"string","required":true},"property_columns":{"type":["list","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"servicebus_namespace":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","optional":true},"shared_access_policy_name":{"type":"string","optional":true},"stream_analytics_job_name":{"type":"string","required":true},"system_property_columns":{"type":["map","string"],"optional":true},"topic_name":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"format":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_output_synapse":{"block":{"attributes":{"database":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"table":{"type":"string","required":true},"user":{"type":"string","required":true}}}},"azurerm_stream_analytics_output_table":{"block":{"attributes":{"batch_size":{"type":"number","required":true},"columns_to_remove":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"partition_key":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"row_key":{"type":"string","required":true},"storage_account_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"table":{"type":"string","required":true}}}},"azurerm_stream_analytics_reference_input_blob":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"date_format":{"type":"string","required":true},"name":{"type":"string","required":true},"path_pattern":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_key":{"type":"string","optional":true},"storage_account_name":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"time_format":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_reference_input_mssql":{"block":{"attributes":{"database":{"type":"string","required":true},"delta_snapshot_query":{"type":"string","optional":true},"full_snapshot_query":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"refresh_interval_duration":{"type":"string","optional":true},"refresh_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"table":{"type":"string","optional":true},"username":{"type":"string","required":true}}}},"azurerm_stream_analytics_stream_input_blob":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"date_format":{"type":"string","required":true},"name":{"type":"string","required":true},"path_pattern":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"time_format":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_stream_input_eventhub":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"eventhub_consumer_group_name":{"type":"string","optional":true},"eventhub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"partition_key":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"servicebus_namespace":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","optional":true},"shared_access_policy_name":{"type":"string","optional":true},"stream_analytics_job_name":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_stream_input_eventhub_v2":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"eventhub_consumer_group_name":{"type":"string","optional":true},"eventhub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"partition_key":{"type":"string","optional":true},"servicebus_namespace":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","optional":true},"shared_access_policy_name":{"type":"string","optional":true},"stream_analytics_job_id":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_stream_input_iothub":{"block":{"attributes":{"endpoint":{"type":"string","required":true},"eventhub_consumer_group_name":{"type":"string","required":true},"iothub_namespace":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","required":true},"shared_access_policy_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_subnet":{"block":{"attributes":{"address_prefixes":{"type":["list","string"],"optional":true,"exactly_one_of":["address_prefixes","ip_address_pool"]},"default_outbound_access_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"private_endpoint_network_policies":{"type":"string","optional":true,"default":"Disabled"},"private_link_service_network_policies_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_endpoint_policy_ids":{"type":["set","string"],"optional":true},"service_endpoints":{"type":["set","string"],"optional":true},"virtual_network_name":{"type":"string","required":true}},"block_types":{"delegation":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"service_delegation":{"nesting_mode":3,"block":{"attributes":{"actions":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true}}},"required":true}}},"optional":true},"ip_address_pool":{"nesting_mode":3,"block":{"attributes":{"allocated_ip_address_prefixes":{"type":["list","string"],"computed":true},"id":{"type":"string","required":true},"number_of_ip_addresses":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["address_prefixes","ip_address_pool"]}}}},"azurerm_subnet_nat_gateway_association":{"block":{"attributes":{"nat_gateway_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_subnet_network_security_group_association":{"block":{"attributes":{"network_security_group_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_subnet_route_table_association":{"block":{"attributes":{"route_table_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_subnet_service_endpoint_storage_policy":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"definition":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"service":{"type":"string","optional":true,"default":"Microsoft.Storage"},"service_resources":{"type":["set","string"],"required":true}}},"optional":true}}}},"azurerm_subscription":{"block":{"attributes":{"alias":{"type":"string","optional":true,"computed":true},"billing_scope_id":{"type":"string","optional":true,"exactly_one_of":["subscription_id","billing_scope_id"]},"subscription_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["subscription_id","billing_scope_id"]},"subscription_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","computed":true},"workload":{"type":"string","optional":true}}}},"azurerm_subscription_cost_management_export":{"block":{"attributes":{"active":{"type":"bool","optional":true,"default":true},"file_format":{"type":"string","optional":true,"default":"Csv"},"name":{"type":"string","required":true},"recurrence_period_end_date":{"type":"string","required":true},"recurrence_period_start_date":{"type":"string","required":true},"recurrence_type":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}},"block_types":{"export_data_options":{"nesting_mode":3,"block":{"attributes":{"time_frame":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true},"export_data_storage_location":{"nesting_mode":3,"block":{"attributes":{"container_id":{"type":"string","required":true},"root_folder_path":{"type":"string","required":true}}},"required":true}}}},"azurerm_subscription_cost_management_view":{"block":{"attributes":{"accumulated":{"type":"bool","required":true},"chart_type":{"type":"string","required":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true},"report_type":{"type":"string","required":true},"subscription_id":{"type":"string","required":true},"timeframe":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"granularity":{"type":"string","required":true}},"block_types":{"aggregation":{"nesting_mode":4,"block":{"attributes":{"column_name":{"type":"string","required":true},"name":{"type":"string","required":true}}},"required":true},"grouping":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true},"sorting":{"nesting_mode":3,"block":{"attributes":{"direction":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}},"required":true},"kpi":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}}},"optional":true},"pivot":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_subscription_policy_assignment":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"enforce":{"type":"bool","optional":true,"default":true},"location":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"not_scopes":{"type":["list","string"],"optional":true},"parameters":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"non_compliance_message":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true}}},"optional":true},"overrides":{"nesting_mode":3,"block":{"attributes":{"value":{"type":"string","required":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","optional":true,"default":"policyDefinitionReferenceId"},"not_in":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"resource_selectors":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","required":true},"not_in":{"type":["list","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_subscription_policy_exemption":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"exemption_category":{"type":"string","required":true},"expires_on":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_ids":{"type":["list","string"],"optional":true},"subscription_id":{"type":"string","required":true}}}},"azurerm_subscription_policy_remediation":{"block":{"attributes":{"failure_percentage":{"type":"number","optional":true},"location_filters":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"parallel_deployments":{"type":"number","optional":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true},"resource_count":{"type":"number","optional":true},"resource_discovery_mode":{"type":"string","optional":true,"default":"ExistingNonCompliant"},"subscription_id":{"type":"string","required":true}}}},"azurerm_subscription_template_deployment":{"block":{"attributes":{"debug_level":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"output_content":{"type":"string","computed":true},"parameters_content":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"template_content":{"type":"string","optional":true,"computed":true,"exactly_one_of":["template_content","template_spec_version_id"]},"template_spec_version_id":{"type":"string","optional":true,"exactly_one_of":["template_content","template_spec_version_id"]}}}},"azurerm_synapse_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true}}}},"azurerm_synapse_integration_runtime_azure":{"block":{"attributes":{"compute_type":{"type":"string","optional":true,"default":"General"},"core_count":{"type":"number","optional":true,"default":8},"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"time_to_live_min":{"type":"number","optional":true,"default":0}}}},"azurerm_synapse_integration_runtime_self_hosted":{"block":{"attributes":{"authorization_key_primary":{"type":"string","computed":true},"authorization_key_secondary":{"type":"string","computed":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true}}}},"azurerm_synapse_linked_service":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"synapse_workspace_id":{"type":"string","required":true},"type":{"type":"string","required":true},"type_properties_json":{"type":"string","required":true}},"block_types":{"integration_runtime":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}}},"azurerm_synapse_managed_private_endpoint":{"block":{"attributes":{"name":{"type":"string","required":true},"subresource_name":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_synapse_private_link_hub":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_synapse_role_assignment":{"block":{"attributes":{"principal_id":{"type":"string","required":true},"principal_type":{"type":"string","optional":true},"role_name":{"type":"string","required":true},"synapse_spark_pool_id":{"type":"string","optional":true,"exactly_one_of":["synapse_workspace_id","synapse_spark_pool_id"]},"synapse_workspace_id":{"type":"string","optional":true,"exactly_one_of":["synapse_workspace_id","synapse_spark_pool_id"]}}}},"azurerm_synapse_spark_pool":{"block":{"attributes":{"cache_size":{"type":"number","optional":true},"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"dynamic_executor_allocation_enabled":{"type":"bool","optional":true,"default":false},"max_executors":{"type":"number","optional":true},"min_executors":{"type":"number","optional":true},"name":{"type":"string","required":true},"node_count":{"type":"number","optional":true,"computed":true,"exactly_one_of":["node_count","auto_scale"]},"node_size":{"type":"string","required":true},"node_size_family":{"type":"string","required":true},"session_level_packages_enabled":{"type":"bool","optional":true,"default":false},"spark_events_folder":{"type":"string","optional":true,"default":"/events"},"spark_log_folder":{"type":"string","optional":true,"default":"/logs"},"spark_version":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"auto_pause":{"nesting_mode":3,"block":{"attributes":{"delay_in_minutes":{"type":"number","required":true}}},"optional":true},"auto_scale":{"nesting_mode":3,"block":{"attributes":{"max_node_count":{"type":"number","required":true},"min_node_count":{"type":"number","required":true}}},"optional":true,"exactly_one_of":["node_count","auto_scale"]},"library_requirement":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"filename":{"type":"string","required":true}}},"optional":true},"spark_config":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"filename":{"type":"string","required":true}}},"optional":true}}}},"azurerm_synapse_sql_pool":{"block":{"attributes":{"collation":{"type":"string","optional":true,"computed":true},"create_mode":{"type":"string","optional":true,"default":"Default"},"data_encrypted":{"type":"bool","optional":true},"geo_backup_policy_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"recovery_database_id":{"type":"string","optional":true,"conflicts_with":["restore"]},"sku_name":{"type":"string","required":true},"storage_account_type":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"restore":{"nesting_mode":3,"block":{"attributes":{"point_in_time":{"type":"string","required":true},"source_database_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["recovery_database_id"]}}}},"azurerm_synapse_sql_pool_extended_auditing_policy":{"block":{"attributes":{"log_monitoring_enabled":{"type":"bool","optional":true,"default":true},"retention_in_days":{"type":"number","optional":true,"default":0},"sql_pool_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_account_access_key_is_secondary":{"type":"bool","optional":true,"default":false},"storage_endpoint":{"type":"string","optional":true}}}},"azurerm_synapse_sql_pool_security_alert_policy":{"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true},"email_account_admins_enabled":{"type":"bool","optional":true,"default":false},"email_addresses":{"type":["set","string"],"optional":true},"policy_state":{"type":"string","required":true},"retention_days":{"type":"number","optional":true,"default":0},"sql_pool_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_endpoint":{"type":"string","optional":true}}}},"azurerm_synapse_sql_pool_vulnerability_assessment":{"block":{"attributes":{"sql_pool_security_alert_policy_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_container_path":{"type":"string","required":true},"storage_container_sas_key":{"type":"string","optional":true}},"block_types":{"recurring_scans":{"nesting_mode":3,"block":{"attributes":{"email_subscription_admins_enabled":{"type":"bool","optional":true,"default":true},"emails":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_synapse_sql_pool_vulnerability_assessment_baseline":{"block":{"attributes":{"name":{"type":"string","required":true},"rule_name":{"type":"string","required":true},"sql_pool_vulnerability_assessment_id":{"type":"string","required":true}},"block_types":{"baseline":{"nesting_mode":3,"block":{"attributes":{"result":{"type":["list","string"],"required":true}}},"optional":true}}}},"azurerm_synapse_sql_pool_workload_classifier":{"block":{"attributes":{"context":{"type":"string","optional":true},"end_time":{"type":"string","optional":true},"importance":{"type":"string","optional":true},"label":{"type":"string","optional":true},"member_name":{"type":"string","required":true},"name":{"type":"string","required":true},"start_time":{"type":"string","optional":true},"workload_group_id":{"type":"string","required":true}}}},"azurerm_synapse_sql_pool_workload_group":{"block":{"attributes":{"importance":{"type":"string","optional":true,"default":"normal"},"max_resource_percent":{"type":"number","required":true},"max_resource_percent_per_request":{"type":"number","optional":true,"default":3},"min_resource_percent":{"type":"number","required":true},"min_resource_percent_per_request":{"type":"number","optional":true},"name":{"type":"string","required":true},"query_execution_timeout_in_seconds":{"type":"number","optional":true},"sql_pool_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace":{"block":{"attributes":{"azuread_authentication_only":{"type":"bool","optional":true,"default":false},"compute_subnet_id":{"type":"string","optional":true},"connectivity_endpoints":{"type":["map","string"],"computed":true},"data_exfiltration_protection_enabled":{"type":"bool","optional":true},"linking_allowed_for_aad_tenant_ids":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"managed_resource_group_name":{"type":"string","optional":true,"computed":true},"managed_virtual_network_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"purview_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"sql_administrator_login":{"type":"string","optional":true},"sql_administrator_login_password":{"type":"string","optional":true},"sql_identity_control_enabled":{"type":"bool","optional":true},"storage_data_lake_gen2_filesystem_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"azure_devops_repo":{"nesting_mode":3,"block":{"attributes":{"account_name":{"type":"string","required":true},"branch_name":{"type":"string","required":true},"last_commit_id":{"type":"string","optional":true},"project_name":{"type":"string","required":true},"repository_name":{"type":"string","required":true},"root_folder":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true,"conflicts_with":["github_repo"]},"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"key_name":{"type":"string","optional":true,"default":"cmk"},"key_versionless_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"github_repo":{"nesting_mode":3,"block":{"attributes":{"account_name":{"type":"string","required":true},"branch_name":{"type":"string","required":true},"git_url":{"type":"string","optional":true},"last_commit_id":{"type":"string","optional":true},"repository_name":{"type":"string","required":true},"root_folder":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_devops_repo"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_synapse_workspace_aad_admin":{"block":{"attributes":{"login":{"type":"string","required":true},"object_id":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace_extended_auditing_policy":{"block":{"attributes":{"log_monitoring_enabled":{"type":"bool","optional":true,"default":true},"retention_in_days":{"type":"number","optional":true,"default":0},"storage_account_access_key":{"type":"string","optional":true},"storage_account_access_key_is_secondary":{"type":"bool","optional":true,"default":false},"storage_endpoint":{"type":"string","optional":true},"synapse_workspace_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace_key":{"block":{"attributes":{"active":{"type":"bool","required":true},"customer_managed_key_name":{"type":"string","required":true},"customer_managed_key_versionless_id":{"type":"string","optional":true},"synapse_workspace_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace_security_alert_policy":{"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true},"email_account_admins_enabled":{"type":"bool","optional":true,"default":false},"email_addresses":{"type":["set","string"],"optional":true},"policy_state":{"type":"string","required":true},"retention_days":{"type":"number","optional":true,"default":0},"storage_account_access_key":{"type":"string","optional":true},"storage_endpoint":{"type":"string","optional":true},"synapse_workspace_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace_sql_aad_admin":{"block":{"attributes":{"login":{"type":"string","required":true},"object_id":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace_vulnerability_assessment":{"block":{"attributes":{"storage_account_access_key":{"type":"string","optional":true},"storage_container_path":{"type":"string","required":true},"storage_container_sas_key":{"type":"string","optional":true},"workspace_security_alert_policy_id":{"type":"string","required":true}},"block_types":{"recurring_scans":{"nesting_mode":3,"block":{"attributes":{"email_subscription_admins_enabled":{"type":"bool","optional":true,"default":true},"emails":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_system_center_virtual_machine_manager_availability_set":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"system_center_virtual_machine_manager_server_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_system_center_virtual_machine_manager_cloud":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"system_center_virtual_machine_manager_server_inventory_item_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_system_center_virtual_machine_manager_server":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"fqdn":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"port":{"type":"number","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"username":{"type":"string","required":true}}}},"azurerm_system_center_virtual_machine_manager_virtual_machine_instance":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"scoped_resource_id":{"type":"string","required":true},"system_center_virtual_machine_manager_availability_set_ids":{"type":["list","string"],"optional":true}},"block_types":{"hardware":{"nesting_mode":3,"block":{"attributes":{"cpu_count":{"type":"number","optional":true,"at_least_one_of":["hardware.0.cpu_count","hardware.0.dynamic_memory_max_in_mb","hardware.0.dynamic_memory_min_in_mb","hardware.0.limit_cpu_for_migration_enabled","hardware.0.memory_in_mb"]},"dynamic_memory_max_in_mb":{"type":"number","optional":true,"at_least_one_of":["hardware.0.cpu_count","hardware.0.dynamic_memory_max_in_mb","hardware.0.dynamic_memory_min_in_mb","hardware.0.limit_cpu_for_migration_enabled","hardware.0.memory_in_mb"]},"dynamic_memory_min_in_mb":{"type":"number","optional":true,"at_least_one_of":["hardware.0.cpu_count","hardware.0.dynamic_memory_max_in_mb","hardware.0.dynamic_memory_min_in_mb","hardware.0.limit_cpu_for_migration_enabled","hardware.0.memory_in_mb"]},"limit_cpu_for_migration_enabled":{"type":"bool","optional":true,"at_least_one_of":["hardware.0.cpu_count","hardware.0.dynamic_memory_max_in_mb","hardware.0.dynamic_memory_min_in_mb","hardware.0.limit_cpu_for_migration_enabled","hardware.0.memory_in_mb"]},"memory_in_mb":{"type":"number","optional":true,"at_least_one_of":["hardware.0.cpu_count","hardware.0.dynamic_memory_max_in_mb","hardware.0.dynamic_memory_min_in_mb","hardware.0.limit_cpu_for_migration_enabled","hardware.0.memory_in_mb"]}}},"optional":true},"infrastructure":{"nesting_mode":3,"block":{"attributes":{"checkpoint_type":{"type":"string","optional":true},"system_center_virtual_machine_manager_cloud_id":{"type":"string","optional":true,"at_least_one_of":["infrastructure.0.system_center_virtual_machine_manager_cloud_id","infrastructure.0.system_center_virtual_machine_manager_inventory_item_id","infrastructure.0.system_center_virtual_machine_manager_template_id","infrastructure.0.system_center_virtual_machine_manager_virtual_machine_server_id"],"required_with":["infrastructure.0.system_center_virtual_machine_manager_template_id"]},"system_center_virtual_machine_manager_inventory_item_id":{"type":"string","optional":true,"at_least_one_of":["infrastructure.0.system_center_virtual_machine_manager_cloud_id","infrastructure.0.system_center_virtual_machine_manager_inventory_item_id","infrastructure.0.system_center_virtual_machine_manager_template_id","infrastructure.0.system_center_virtual_machine_manager_virtual_machine_server_id"],"required_with":["infrastructure.0.system_center_virtual_machine_manager_virtual_machine_server_id"]},"system_center_virtual_machine_manager_template_id":{"type":"string","optional":true,"at_least_one_of":["infrastructure.0.system_center_virtual_machine_manager_cloud_id","infrastructure.0.system_center_virtual_machine_manager_inventory_item_id","infrastructure.0.system_center_virtual_machine_manager_template_id","infrastructure.0.system_center_virtual_machine_manager_virtual_machine_server_id"],"required_with":["infrastructure.0.system_center_virtual_machine_manager_cloud_id"]},"system_center_virtual_machine_manager_virtual_machine_server_id":{"type":"string","optional":true,"at_least_one_of":["infrastructure.0.system_center_virtual_machine_manager_cloud_id","infrastructure.0.system_center_virtual_machine_manager_inventory_item_id","infrastructure.0.system_center_virtual_machine_manager_template_id","infrastructure.0.system_center_virtual_machine_manager_virtual_machine_server_id"]}}},"required":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"ipv4_address_type":{"type":"string","optional":true},"ipv6_address_type":{"type":"string","optional":true},"mac_address_type":{"type":"string","optional":true},"name":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true}}},"optional":true},"operating_system":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","optional":true,"at_least_one_of":["operating_system.0.computer_name","operating_system.0.admin_password"]},"computer_name":{"type":"string","optional":true,"at_least_one_of":["operating_system.0.computer_name","operating_system.0.admin_password"]}}},"optional":true},"storage_disk":{"nesting_mode":3,"block":{"attributes":{"bus":{"type":"number","optional":true},"bus_type":{"type":"string","optional":true},"disk_size_gb":{"type":"number","optional":true},"lun":{"type":"number","optional":true},"name":{"type":"string","optional":true},"storage_qos_policy_name":{"type":"string","optional":true},"template_disk_id":{"type":"string","optional":true},"vhd_type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_system_center_virtual_machine_manager_virtual_machine_instance_guest_agent":{"block":{"attributes":{"password":{"type":"string","required":true},"provisioning_action":{"type":"string","optional":true,"default":"install"},"scoped_resource_id":{"type":"string","required":true},"username":{"type":"string","required":true}}}},"azurerm_system_center_virtual_machine_manager_virtual_machine_template":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"system_center_virtual_machine_manager_server_inventory_item_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_system_center_virtual_machine_manager_virtual_network":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"system_center_virtual_machine_manager_server_inventory_item_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_tenant_template_deployment":{"block":{"attributes":{"debug_level":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"output_content":{"type":"string","computed":true},"parameters_content":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"template_content":{"type":"string","optional":true,"computed":true,"exactly_one_of":["template_content","template_spec_version_id"]},"template_spec_version_id":{"type":"string","optional":true,"exactly_one_of":["template_content","template_spec_version_id"]}}}},"azurerm_traffic_manager_azure_endpoint":{"block":{"attributes":{"always_serve_enabled":{"type":"bool","optional":true,"default":false},"enabled":{"type":"bool","optional":true,"default":true},"geo_mappings":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"computed":true},"profile_id":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"weight":{"type":"number","optional":true,"default":1}},"block_types":{"custom_header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"subnet":{"nesting_mode":3,"block":{"attributes":{"first":{"type":"string","required":true},"last":{"type":"string","optional":true},"scope":{"type":"number","optional":true}}},"optional":true}}}},"azurerm_traffic_manager_external_endpoint":{"block":{"attributes":{"always_serve_enabled":{"type":"bool","optional":true,"default":false},"enabled":{"type":"bool","optional":true,"default":true},"endpoint_location":{"type":"string","optional":true,"computed":true},"geo_mappings":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"computed":true},"profile_id":{"type":"string","required":true},"target":{"type":"string","required":true},"weight":{"type":"number","optional":true,"default":1}},"block_types":{"custom_header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"subnet":{"nesting_mode":3,"block":{"attributes":{"first":{"type":"string","required":true},"last":{"type":"string","optional":true},"scope":{"type":"number","optional":true}}},"optional":true}}}},"azurerm_traffic_manager_nested_endpoint":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"endpoint_location":{"type":"string","optional":true,"computed":true},"geo_mappings":{"type":["list","string"],"optional":true},"minimum_child_endpoints":{"type":"number","required":true},"minimum_required_child_endpoints_ipv4":{"type":"number","optional":true},"minimum_required_child_endpoints_ipv6":{"type":"number","optional":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"computed":true},"profile_id":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"weight":{"type":"number","optional":true,"default":1}},"block_types":{"custom_header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"subnet":{"nesting_mode":3,"block":{"attributes":{"first":{"type":"string","required":true},"last":{"type":"string","optional":true},"scope":{"type":"number","optional":true}}},"optional":true}}}},"azurerm_traffic_manager_profile":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"max_return":{"type":"number","optional":true},"name":{"type":"string","required":true},"profile_status":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"traffic_routing_method":{"type":"string","required":true},"traffic_view_enabled":{"type":"bool","optional":true}},"block_types":{"dns_config":{"nesting_mode":3,"block":{"attributes":{"relative_name":{"type":"string","required":true},"ttl":{"type":"number","required":true}}},"required":true},"monitor_config":{"nesting_mode":3,"block":{"attributes":{"expected_status_code_ranges":{"type":["list","string"],"optional":true},"interval_in_seconds":{"type":"number","optional":true,"default":30},"path":{"type":"string","optional":true},"port":{"type":"number","required":true},"protocol":{"type":"string","required":true},"timeout_in_seconds":{"type":"number","optional":true,"default":10},"tolerated_number_of_failures":{"type":"number","optional":true,"default":3}},"block_types":{"custom_header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_trusted_signing_account":{"block":{"attributes":{"account_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_user_assigned_identity":{"block":{"attributes":{"client_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"principal_id":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","computed":true}}}},"azurerm_video_indexer_account":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true},"storage":{"nesting_mode":3,"block":{"attributes":{"storage_account_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"required":true}}}},"azurerm_virtual_desktop_application":{"block":{"attributes":{"application_group_id":{"type":"string","required":true},"command_line_argument_policy":{"type":"string","required":true},"command_line_arguments":{"type":"string","optional":true},"description":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true,"computed":true},"icon_index":{"type":"number","optional":true},"icon_path":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"path":{"type":"string","required":true},"show_in_portal":{"type":"bool","optional":true}}}},"azurerm_virtual_desktop_application_group":{"block":{"attributes":{"default_desktop_display_name":{"type":"string","optional":true},"description":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true},"host_pool_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true}}}},"azurerm_virtual_desktop_host_pool":{"block":{"attributes":{"custom_rdp_properties":{"type":"string","optional":true},"description":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true},"load_balancer_type":{"type":"string","required":true},"location":{"type":"string","required":true},"maximum_sessions_allowed":{"type":"number","optional":true,"default":999999},"name":{"type":"string","required":true},"personal_desktop_assignment_type":{"type":"string","optional":true},"preferred_app_group_type":{"type":"string","optional":true,"default":"Desktop"},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"start_vm_on_connect":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"validate_environment":{"type":"bool","optional":true,"default":false},"vm_template":{"type":"string","optional":true}},"block_types":{"scheduled_agent_updates":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":false},"timezone":{"type":"string","optional":true,"default":"UTC"},"use_session_host_timezone":{"type":"bool","optional":true,"default":false}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"string","required":true},"hour_of_day":{"type":"number","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_virtual_desktop_host_pool_registration_info":{"block":{"attributes":{"expiration_date":{"type":"string","required":true},"hostpool_id":{"type":"string","required":true},"token":{"type":"string","computed":true}}}},"azurerm_virtual_desktop_scaling_plan":{"block":{"attributes":{"description":{"type":"string","optional":true},"exclusion_tag":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"time_zone":{"type":"string","required":true}},"block_types":{"host_pool":{"nesting_mode":3,"block":{"attributes":{"hostpool_id":{"type":"string","required":true},"scaling_plan_enabled":{"type":"bool","required":true}}},"optional":true,"computed":true},"schedule":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["set","string"],"required":true},"name":{"type":"string","required":true},"off_peak_load_balancing_algorithm":{"type":"string","required":true},"off_peak_start_time":{"type":"string","required":true},"peak_load_balancing_algorithm":{"type":"string","required":true},"peak_start_time":{"type":"string","required":true},"ramp_down_capacity_threshold_percent":{"type":"number","required":true},"ramp_down_force_logoff_users":{"type":"bool","required":true},"ramp_down_load_balancing_algorithm":{"type":"string","required":true},"ramp_down_minimum_hosts_percent":{"type":"number","required":true},"ramp_down_notification_message":{"type":"string","required":true},"ramp_down_start_time":{"type":"string","required":true},"ramp_down_stop_hosts_when":{"type":"string","required":true},"ramp_down_wait_time_minutes":{"type":"number","required":true},"ramp_up_capacity_threshold_percent":{"type":"number","optional":true},"ramp_up_load_balancing_algorithm":{"type":"string","required":true},"ramp_up_minimum_hosts_percent":{"type":"number","optional":true},"ramp_up_start_time":{"type":"string","required":true}}},"required":true}}}},"azurerm_virtual_desktop_scaling_plan_host_pool_association":{"block":{"attributes":{"enabled":{"type":"bool","required":true},"host_pool_id":{"type":"string","required":true},"scaling_plan_id":{"type":"string","required":true}}}},"azurerm_virtual_desktop_workspace":{"block":{"attributes":{"description":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_virtual_desktop_workspace_application_group_association":{"block":{"attributes":{"application_group_id":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_virtual_hub":{"block":{"attributes":{"address_prefix":{"type":"string","optional":true},"branch_to_branch_traffic_enabled":{"type":"bool","optional":true,"default":false},"default_route_table_id":{"type":"string","computed":true},"hub_routing_preference":{"type":"string","optional":true,"default":"ExpressRoute"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_router_asn":{"type":"number","computed":true},"virtual_router_auto_scale_min_capacity":{"type":"number","optional":true,"default":2},"virtual_router_ips":{"type":["list","string"],"computed":true},"virtual_wan_id":{"type":"string","optional":true}},"block_types":{"route":{"nesting_mode":4,"block":{"attributes":{"address_prefixes":{"type":["list","string"],"required":true},"next_hop_ip_address":{"type":"string","required":true}}},"optional":true}}}},"azurerm_virtual_hub_bgp_connection":{"block":{"attributes":{"name":{"type":"string","required":true},"peer_asn":{"type":"number","required":true},"peer_ip":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true},"virtual_network_connection_id":{"type":"string","optional":true}}}},"azurerm_virtual_hub_connection":{"block":{"attributes":{"internet_security_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"remote_virtual_network_id":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}},"block_types":{"routing":{"nesting_mode":3,"block":{"attributes":{"associated_route_table_id":{"type":"string","optional":true,"computed":true,"at_least_one_of":["routing.0.associated_route_table_id","routing.0.propagated_route_table","routing.0.static_vnet_route"]},"inbound_route_map_id":{"type":"string","optional":true},"outbound_route_map_id":{"type":"string","optional":true},"static_vnet_local_route_override_criteria":{"type":"string","optional":true,"default":"Contains"},"static_vnet_propagate_static_routes_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"propagated_route_table":{"nesting_mode":3,"block":{"attributes":{"labels":{"type":["set","string"],"optional":true,"computed":true,"at_least_one_of":["routing.0.propagated_route_table.0.labels","routing.0.propagated_route_table.0.route_table_ids"]},"route_table_ids":{"type":["list","string"],"optional":true,"computed":true,"at_least_one_of":["routing.0.propagated_route_table.0.labels","routing.0.propagated_route_table.0.route_table_ids"]}}},"optional":true,"computed":true,"at_least_one_of":["routing.0.associated_route_table_id","routing.0.propagated_route_table","routing.0.static_vnet_route"]},"static_vnet_route":{"nesting_mode":3,"block":{"attributes":{"address_prefixes":{"type":["set","string"],"optional":true},"name":{"type":"string","optional":true},"next_hop_ip_address":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["routing.0.associated_route_table_id","routing.0.propagated_route_table","routing.0.static_vnet_route"]}}},"optional":true,"computed":true}}}},"azurerm_virtual_hub_ip":{"block":{"attributes":{"name":{"type":"string","required":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true,"default":"Dynamic"},"public_ip_address_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}}}},"azurerm_virtual_hub_route_table":{"block":{"attributes":{"labels":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}},"block_types":{"route":{"nesting_mode":4,"block":{"attributes":{"destinations":{"type":["set","string"],"required":true},"destinations_type":{"type":"string","required":true},"name":{"type":"string","required":true},"next_hop":{"type":"string","required":true},"next_hop_type":{"type":"string","optional":true,"default":"ResourceId"}}},"optional":true,"computed":true}}}},"azurerm_virtual_hub_route_table_route":{"block":{"attributes":{"destinations":{"type":["set","string"],"required":true},"destinations_type":{"type":"string","required":true},"name":{"type":"string","required":true},"next_hop":{"type":"string","required":true},"next_hop_type":{"type":"string","optional":true,"default":"ResourceId"},"route_table_id":{"type":"string","required":true}}}},"azurerm_virtual_hub_routing_intent":{"block":{"attributes":{"name":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}},"block_types":{"routing_policy":{"nesting_mode":3,"block":{"attributes":{"destinations":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"next_hop":{"type":"string","required":true}}},"required":true}}}},"azurerm_virtual_hub_security_partner_provider":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"security_provider_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_hub_id":{"type":"string","optional":true}}}},"azurerm_virtual_machine":{"block":{"attributes":{"availability_set_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["zones"]},"delete_data_disks_on_termination":{"type":"bool","optional":true,"default":false},"delete_os_disk_on_termination":{"type":"bool","optional":true,"default":false},"license_type":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_interface_ids":{"type":["list","string"],"required":true},"primary_network_interface_id":{"type":"string","optional":true},"proximity_placement_group_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"vm_size":{"type":"string","required":true},"zones":{"type":["list","string"],"optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"ultra_ssd_enabled":{"type":"bool","required":true}}},"optional":true},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"storage_uri":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"os_profile":{"nesting_mode":4,"block":{"attributes":{"admin_password":{"type":"string","optional":true},"admin_username":{"type":"string","required":true},"computer_name":{"type":"string","required":true},"custom_data":{"type":"string","optional":true,"computed":true}}},"optional":true},"os_profile_linux_config":{"nesting_mode":4,"block":{"attributes":{"disable_password_authentication":{"type":"bool","required":true}},"block_types":{"ssh_keys":{"nesting_mode":3,"block":{"attributes":{"key_data":{"type":"string","required":true},"path":{"type":"string","required":true}}},"optional":true}}},"optional":true,"conflicts_with":["os_profile_windows_config"]},"os_profile_secrets":{"nesting_mode":3,"block":{"attributes":{"source_vault_id":{"type":"string","required":true}},"block_types":{"vault_certificates":{"nesting_mode":3,"block":{"attributes":{"certificate_store":{"type":"string","optional":true},"certificate_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"os_profile_windows_config":{"nesting_mode":4,"block":{"attributes":{"enable_automatic_upgrades":{"type":"bool","optional":true,"default":false},"provision_vm_agent":{"type":"bool","optional":true,"default":false},"timezone":{"type":"string","optional":true}},"block_types":{"additional_unattend_config":{"nesting_mode":3,"block":{"attributes":{"component":{"type":"string","required":true},"content":{"type":"string","required":true},"pass":{"type":"string","required":true},"setting_name":{"type":"string","required":true}}},"optional":true},"winrm":{"nesting_mode":3,"block":{"attributes":{"certificate_url":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"optional":true}}},"optional":true,"conflicts_with":["os_profile_linux_config"]},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"storage_data_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","optional":true,"computed":true},"create_option":{"type":"string","required":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"lun":{"type":"number","required":true},"managed_disk_id":{"type":"string","optional":true,"computed":true},"managed_disk_type":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"vhd_uri":{"type":"string","optional":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true},"storage_image_reference":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","optional":true},"offer":{"type":"string","optional":true},"publisher":{"type":"string","optional":true},"sku":{"type":"string","optional":true},"version":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"storage_os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","optional":true,"computed":true},"create_option":{"type":"string","required":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"image_uri":{"type":"string","optional":true},"managed_disk_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["storage_os_disk.0.vhd_uri"]},"managed_disk_type":{"type":"string","optional":true,"computed":true,"conflicts_with":["storage_os_disk.0.vhd_uri"]},"name":{"type":"string","required":true},"os_type":{"type":"string","optional":true,"computed":true},"vhd_uri":{"type":"string","optional":true,"conflicts_with":["storage_os_disk.0.managed_disk_id","storage_os_disk.0.managed_disk_type"]},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}},"required":true}}}},"azurerm_virtual_machine_automanage_configuration_assignment":{"block":{"attributes":{"configuration_id":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}}}},"azurerm_virtual_machine_data_disk_attachment":{"block":{"attributes":{"caching":{"type":"string","required":true},"create_option":{"type":"string","optional":true,"default":"Attach"},"lun":{"type":"number","required":true},"managed_disk_id":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}}},"azurerm_virtual_machine_extension":{"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true},"automatic_upgrade_enabled":{"type":"bool","optional":true},"failure_suppression_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true,"conflicts_with":["protected_settings_from_key_vault"]},"provision_after_extensions":{"type":["list","string"],"optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"protected_settings_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["protected_settings"]}}}},"azurerm_virtual_machine_gallery_application_assignment":{"block":{"attributes":{"configuration_blob_uri":{"type":"string","optional":true},"gallery_application_version_id":{"type":"string","required":true},"order":{"type":"number","optional":true,"default":0},"tag":{"type":"string","optional":true},"virtual_machine_id":{"type":"string","required":true}}}},"azurerm_virtual_machine_implicit_data_disk_from_source":{"block":{"attributes":{"caching":{"type":"string","optional":true},"create_option":{"type":"string","required":true},"disk_size_gb":{"type":"number","required":true},"lun":{"type":"number","required":true},"name":{"type":"string","required":true},"source_resource_id":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}}},"azurerm_virtual_machine_packet_capture":{"block":{"attributes":{"maximum_bytes_per_packet":{"type":"number","optional":true,"default":0},"maximum_bytes_per_session":{"type":"number","optional":true,"default":1073741824},"maximum_capture_duration_in_seconds":{"type":"number","optional":true,"default":18000},"name":{"type":"string","required":true},"network_watcher_id":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"local_ip_address":{"type":"string","optional":true},"local_port":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"remote_ip_address":{"type":"string","optional":true},"remote_port":{"type":"string","optional":true}}},"optional":true},"storage_location":{"nesting_mode":3,"block":{"attributes":{"file_path":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_account_id":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_path":{"type":"string","computed":true}}},"required":true}}}},"azurerm_virtual_machine_restore_point":{"block":{"attributes":{"crash_consistency_mode_enabled":{"type":"bool","optional":true,"default":false},"excluded_disks":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"virtual_machine_restore_point_collection_id":{"type":"string","required":true}}}},"azurerm_virtual_machine_restore_point_collection":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_virtual_machine_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_virtual_machine_run_command":{"block":{"attributes":{"error_blob_uri":{"type":"string","optional":true},"instance_view":{"type":["list",["object",{"end_time":"string","error_message":"string","execution_message":"string","execution_state":"string","exit_code":"number","output":"string","start_time":"string"}]],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"output_blob_uri":{"type":"string","optional":true},"run_as_password":{"type":"string","optional":true},"run_as_user":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"error_blob_managed_identity":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true,"conflicts_with":["error_blob_managed_identity.0.object_id"]},"object_id":{"type":"string","optional":true,"conflicts_with":["error_blob_managed_identity.0.client_id"]}}},"optional":true,"required_with":["error_blob_uri"]},"output_blob_managed_identity":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true,"conflicts_with":["output_blob_managed_identity.0.object_id"]},"object_id":{"type":"string","optional":true,"conflicts_with":["output_blob_managed_identity.0.client_id"]}}},"optional":true,"required_with":["output_blob_uri"]},"parameter":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"protected_parameter":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"source":{"nesting_mode":3,"block":{"attributes":{"command_id":{"type":"string","optional":true,"exactly_one_of":["source.0.command_id","source.0.script","source.0.script_uri"]},"script":{"type":"string","optional":true,"exactly_one_of":["source.0.command_id","source.0.script","source.0.script_uri"]},"script_uri":{"type":"string","optional":true,"exactly_one_of":["source.0.command_id","source.0.script","source.0.script_uri"]}},"block_types":{"script_uri_managed_identity":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true,"conflicts_with":["source.0.script_uri_managed_identity.0.object_id"]},"object_id":{"type":"string","optional":true,"conflicts_with":["source.0.script_uri_managed_identity.0.client_id"]}}},"optional":true,"required_with":["source.0.script_uri"]}}},"required":true}}}},"azurerm_virtual_machine_scale_set":{"block":{"attributes":{"automatic_os_upgrade":{"type":"bool","optional":true,"default":false},"eviction_policy":{"type":"string","optional":true},"health_probe_id":{"type":"string","optional":true},"license_type":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"overprovision":{"type":"bool","optional":true,"default":true},"priority":{"type":"string","optional":true},"proximity_placement_group_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"single_placement_group":{"type":"bool","optional":true,"default":true},"tags":{"type":["map","string"],"optional":true},"upgrade_policy_mode":{"type":"string","required":true},"zones":{"type":["list","string"],"optional":true}},"block_types":{"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"storage_uri":{"type":"string","required":true}}},"optional":true},"extension":{"nesting_mode":4,"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"provision_after_extensions":{"type":["set","string"],"optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_profile":{"nesting_mode":4,"block":{"attributes":{"accelerated_networking":{"type":"bool","optional":true},"ip_forwarding":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"network_security_group_id":{"type":"string","optional":true},"primary":{"type":"bool","required":true}},"block_types":{"dns_settings":{"nesting_mode":3,"block":{"attributes":{"dns_servers":{"type":["list","string"],"required":true}}},"optional":true},"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"application_gateway_backend_address_pool_ids":{"type":["set","string"],"optional":true},"application_security_group_ids":{"type":["set","string"],"optional":true},"load_balancer_backend_address_pool_ids":{"type":["set","string"],"optional":true},"load_balancer_inbound_nat_rules_ids":{"type":["set","string"],"optional":true,"computed":true},"name":{"type":"string","required":true},"primary":{"type":"bool","required":true},"subnet_id":{"type":"string","required":true}},"block_types":{"public_ip_address_configuration":{"nesting_mode":3,"block":{"attributes":{"domain_name_label":{"type":"string","required":true},"idle_timeout":{"type":"number","required":true},"name":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","optional":true},"admin_username":{"type":"string","required":true},"computer_name_prefix":{"type":"string","required":true},"custom_data":{"type":"string","optional":true}}},"required":true},"os_profile_linux_config":{"nesting_mode":4,"block":{"attributes":{"disable_password_authentication":{"type":"bool","optional":true,"default":false}},"block_types":{"ssh_keys":{"nesting_mode":3,"block":{"attributes":{"key_data":{"type":"string","optional":true},"path":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"os_profile_secrets":{"nesting_mode":4,"block":{"attributes":{"source_vault_id":{"type":"string","required":true}},"block_types":{"vault_certificates":{"nesting_mode":3,"block":{"attributes":{"certificate_store":{"type":"string","optional":true},"certificate_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"os_profile_windows_config":{"nesting_mode":4,"block":{"attributes":{"enable_automatic_upgrades":{"type":"bool","optional":true},"provision_vm_agent":{"type":"bool","optional":true}},"block_types":{"additional_unattend_config":{"nesting_mode":3,"block":{"attributes":{"component":{"type":"string","required":true},"content":{"type":"string","required":true},"pass":{"type":"string","required":true},"setting_name":{"type":"string","required":true}}},"optional":true},"winrm":{"nesting_mode":3,"block":{"attributes":{"certificate_url":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"optional":true}}},"optional":true},"plan":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"rolling_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"max_batch_instance_percent":{"type":"number","optional":true,"default":20},"max_unhealthy_instance_percent":{"type":"number","optional":true,"default":20},"max_unhealthy_upgraded_instance_percent":{"type":"number","optional":true,"default":20},"pause_time_between_batches":{"type":"string","optional":true,"default":"PT0S"}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"name":{"type":"string","required":true},"tier":{"type":"string","optional":true,"computed":true}}},"required":true},"storage_profile_data_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","optional":true,"computed":true},"create_option":{"type":"string","required":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"lun":{"type":"number","required":true},"managed_disk_type":{"type":"string","optional":true,"computed":true}}},"optional":true},"storage_profile_image_reference":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","optional":true},"offer":{"type":"string","optional":true},"publisher":{"type":"string","optional":true},"sku":{"type":"string","optional":true},"version":{"type":"string","optional":true}}},"optional":true,"computed":true},"storage_profile_os_disk":{"nesting_mode":4,"block":{"attributes":{"caching":{"type":"string","optional":true,"computed":true},"create_option":{"type":"string","required":true},"image":{"type":"string","optional":true},"managed_disk_type":{"type":"string","optional":true,"computed":true},"name":{"type":"string","optional":true},"os_type":{"type":"string","optional":true},"vhd_containers":{"type":["set","string"],"optional":true}}},"required":true}}}},"azurerm_virtual_machine_scale_set_extension":{"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true,"default":true},"automatic_upgrade_enabled":{"type":"bool","optional":true},"failure_suppression_enabled":{"type":"bool","optional":true,"default":false},"force_update_tag":{"type":"string","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"provision_after_extensions":{"type":["list","string"],"optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true},"virtual_machine_scale_set_id":{"type":"string","required":true}},"block_types":{"protected_settings_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["protected_settings"]}}}},"azurerm_virtual_machine_scale_set_packet_capture":{"block":{"attributes":{"maximum_bytes_per_packet":{"type":"number","optional":true,"default":0},"maximum_bytes_per_session":{"type":"number","optional":true,"default":1073741824},"maximum_capture_duration_in_seconds":{"type":"number","optional":true,"default":18000},"name":{"type":"string","required":true},"network_watcher_id":{"type":"string","required":true},"virtual_machine_scale_set_id":{"type":"string","required":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"local_ip_address":{"type":"string","optional":true},"local_port":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"remote_ip_address":{"type":"string","optional":true},"remote_port":{"type":"string","optional":true}}},"optional":true},"machine_scope":{"nesting_mode":3,"block":{"attributes":{"exclude_instance_ids":{"type":["list","string"],"optional":true,"conflicts_with":["machine_scope.0.include_instance_ids"]},"include_instance_ids":{"type":["list","string"],"optional":true,"conflicts_with":["machine_scope.0.exclude_instance_ids"]}}},"optional":true},"storage_location":{"nesting_mode":3,"block":{"attributes":{"file_path":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_account_id":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_path":{"type":"string","computed":true}}},"required":true}}}},"azurerm_virtual_machine_scale_set_standby_pool":{"block":{"attributes":{"attached_virtual_machine_scale_set_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_machine_state":{"type":"string","required":true}},"block_types":{"elasticity_profile":{"nesting_mode":3,"block":{"attributes":{"max_ready_capacity":{"type":"number","required":true},"min_ready_capacity":{"type":"number","required":true}}},"required":true}}}},"azurerm_virtual_network":{"block":{"attributes":{"address_space":{"type":["set","string"],"optional":true,"exactly_one_of":["address_space","ip_address_pool"]},"bgp_community":{"type":"string","optional":true},"dns_servers":{"type":["list","string"],"optional":true,"computed":true},"edge_zone":{"type":"string","optional":true},"flow_timeout_in_minutes":{"type":"number","optional":true},"guid":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_endpoint_vnet_policies":{"type":"string","optional":true,"default":"Disabled"},"resource_group_name":{"type":"string","required":true},"subnet":{"type":["set",["object",{"address_prefixes":["list","string"],"default_outbound_access_enabled":"bool","delegation":["list",["object",{"name":"string","service_delegation":["list",["object",{"actions":["set","string"],"name":"string"}]]}]],"id":"string","name":"string","private_endpoint_network_policies":"string","private_link_service_network_policies_enabled":"bool","route_table_id":"string","security_group":"string","service_endpoint_policy_ids":["set","string"],"service_endpoints":["set","string"]}]],"optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ddos_protection_plan":{"nesting_mode":3,"block":{"attributes":{"enable":{"type":"bool","required":true},"id":{"type":"string","required":true}}},"optional":true},"encryption":{"nesting_mode":3,"block":{"attributes":{"enforcement":{"type":"string","required":true}}},"optional":true},"ip_address_pool":{"nesting_mode":3,"block":{"attributes":{"allocated_ip_address_prefixes":{"type":["list","string"],"computed":true},"id":{"type":"string","required":true},"number_of_ip_addresses":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["address_space","ip_address_pool"]}}}},"azurerm_virtual_network_dns_servers":{"block":{"attributes":{"dns_servers":{"type":["list","string"],"optional":true},"virtual_network_id":{"type":"string","required":true}}}},"azurerm_virtual_network_gateway":{"block":{"attributes":{"active_active":{"type":"bool","optional":true,"computed":true},"bgp_route_translation_for_nat_enabled":{"type":"bool","optional":true,"default":false},"default_local_network_gateway_id":{"type":"string","optional":true},"dns_forwarding_enabled":{"type":"bool","optional":true},"edge_zone":{"type":"string","optional":true},"enable_bgp":{"type":"bool","optional":true,"computed":true},"generation":{"type":"string","optional":true,"computed":true},"ip_sec_replay_protection_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_ip_address_enabled":{"type":"bool","optional":true},"remote_vnet_traffic_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"virtual_wan_traffic_enabled":{"type":"bool","optional":true,"default":false},"vpn_type":{"type":"string","optional":true,"default":"RouteBased"}},"block_types":{"bgp_settings":{"nesting_mode":3,"block":{"attributes":{"asn":{"type":"number","optional":true,"at_least_one_of":["bgp_settings.0.asn","bgp_settings.0.peer_weight","bgp_settings.0.peering_addresses"]},"peer_weight":{"type":"number","optional":true,"at_least_one_of":["bgp_settings.0.asn","bgp_settings.0.peer_weight","bgp_settings.0.peering_addresses"]}},"block_types":{"peering_addresses":{"nesting_mode":3,"block":{"attributes":{"apipa_addresses":{"type":["list","string"],"optional":true},"default_addresses":{"type":["list","string"],"computed":true},"ip_configuration_name":{"type":"string","optional":true,"computed":true},"tunnel_ip_addresses":{"type":["list","string"],"computed":true}}},"optional":true,"computed":true,"at_least_one_of":["bgp_settings.0.asn","bgp_settings.0.peer_weight","bgp_settings.0.peering_addresses"]}}},"optional":true,"computed":true},"custom_route":{"nesting_mode":3,"block":{"attributes":{"address_prefixes":{"type":["set","string"],"optional":true}}},"optional":true},"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true,"default":"vnetGatewayConfig"},"private_ip_address_allocation":{"type":"string","optional":true,"default":"Dynamic"},"public_ip_address_id":{"type":"string","optional":true},"subnet_id":{"type":"string","required":true}}},"required":true},"policy_group":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":0}},"block_types":{"policy_member":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}},"optional":true},"vpn_client_configuration":{"nesting_mode":3,"block":{"attributes":{"aad_audience":{"type":"string","optional":true,"required_with":["vpn_client_configuration.0.aad_issuer","vpn_client_configuration.0.aad_tenant"]},"aad_issuer":{"type":"string","optional":true,"required_with":["vpn_client_configuration.0.aad_audience","vpn_client_configuration.0.aad_tenant"]},"aad_tenant":{"type":"string","optional":true,"required_with":["vpn_client_configuration.0.aad_audience","vpn_client_configuration.0.aad_issuer"]},"address_space":{"type":["list","string"],"required":true},"radius_server_address":{"type":"string","optional":true,"required_with":["vpn_client_configuration.0.radius_server_secret"]},"radius_server_secret":{"type":"string","optional":true,"required_with":["vpn_client_configuration.0.radius_server_address"]},"vpn_auth_types":{"type":["set","string"],"optional":true,"computed":true},"vpn_client_protocols":{"type":["set","string"],"optional":true,"computed":true}},"block_types":{"ipsec_policy":{"nesting_mode":3,"block":{"attributes":{"dh_group":{"type":"string","required":true},"ike_encryption":{"type":"string","required":true},"ike_integrity":{"type":"string","required":true},"ipsec_encryption":{"type":"string","required":true},"ipsec_integrity":{"type":"string","required":true},"pfs_group":{"type":"string","required":true},"sa_data_size_in_kilobytes":{"type":"number","required":true},"sa_lifetime_in_seconds":{"type":"number","required":true}}},"optional":true},"radius_server":{"nesting_mode":3,"block":{"attributes":{"address":{"type":"string","required":true},"score":{"type":"number","required":true},"secret":{"type":"string","required":true}}},"optional":true},"revoked_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"thumbprint":{"type":"string","required":true}}},"optional":true},"root_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"public_cert_data":{"type":"string","required":true}}},"optional":true},"virtual_network_gateway_client_connection":{"nesting_mode":3,"block":{"attributes":{"address_prefixes":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"policy_group_names":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true}}}},"azurerm_virtual_network_gateway_connection":{"block":{"attributes":{"authorization_key":{"type":"string","optional":true},"connection_mode":{"type":"string","optional":true,"default":"Default"},"connection_protocol":{"type":"string","optional":true,"computed":true},"dpd_timeout_seconds":{"type":"number","optional":true},"egress_nat_rule_ids":{"type":["set","string"],"optional":true},"enable_bgp":{"type":"bool","optional":true,"computed":true},"express_route_circuit_id":{"type":"string","optional":true},"express_route_gateway_bypass":{"type":"bool","optional":true,"computed":true},"ingress_nat_rule_ids":{"type":["set","string"],"optional":true},"local_azure_ip_address_enabled":{"type":"bool","optional":true},"local_network_gateway_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"peer_virtual_network_gateway_id":{"type":"string","optional":true},"private_link_fast_path_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"routing_weight":{"type":"number","optional":true,"computed":true},"shared_key":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"use_policy_based_traffic_selectors":{"type":"bool","optional":true,"computed":true},"virtual_network_gateway_id":{"type":"string","required":true}},"block_types":{"custom_bgp_addresses":{"nesting_mode":3,"block":{"attributes":{"primary":{"type":"string","required":true},"secondary":{"type":"string","optional":true}}},"optional":true},"ipsec_policy":{"nesting_mode":3,"block":{"attributes":{"dh_group":{"type":"string","required":true},"ike_encryption":{"type":"string","required":true},"ike_integrity":{"type":"string","required":true},"ipsec_encryption":{"type":"string","required":true},"ipsec_integrity":{"type":"string","required":true},"pfs_group":{"type":"string","required":true},"sa_datasize":{"type":"number","optional":true,"computed":true},"sa_lifetime":{"type":"number","optional":true,"computed":true}}},"optional":true},"traffic_selector_policy":{"nesting_mode":3,"block":{"attributes":{"local_address_cidrs":{"type":["list","string"],"required":true},"remote_address_cidrs":{"type":["list","string"],"required":true}}},"optional":true}}}},"azurerm_virtual_network_gateway_nat_rule":{"block":{"attributes":{"ip_configuration_id":{"type":"string","optional":true},"mode":{"type":"string","optional":true,"default":"EgressSnat"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"type":{"type":"string","optional":true,"default":"Static"},"virtual_network_gateway_id":{"type":"string","required":true}},"block_types":{"external_mapping":{"nesting_mode":3,"block":{"attributes":{"address_space":{"type":"string","required":true},"port_range":{"type":"string","optional":true}}},"required":true},"internal_mapping":{"nesting_mode":3,"block":{"attributes":{"address_space":{"type":"string","required":true},"port_range":{"type":"string","optional":true}}},"required":true}}}},"azurerm_virtual_network_peering":{"block":{"attributes":{"allow_forwarded_traffic":{"type":"bool","optional":true,"default":false},"allow_gateway_transit":{"type":"bool","optional":true,"default":false},"allow_virtual_network_access":{"type":"bool","optional":true,"default":true},"local_subnet_names":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"only_ipv6_peering_enabled":{"type":"bool","optional":true},"peer_complete_virtual_networks_enabled":{"type":"bool","optional":true,"default":true},"remote_subnet_names":{"type":["list","string"],"optional":true},"remote_virtual_network_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"triggers":{"type":["map","string"],"optional":true},"use_remote_gateways":{"type":"bool","optional":true,"default":false},"virtual_network_name":{"type":"string","required":true}}}},"azurerm_virtual_wan":{"block":{"attributes":{"allow_branch_to_branch_traffic":{"type":"bool","optional":true,"default":true},"disable_vpn_encryption":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"office365_local_breakout_category":{"type":"string","optional":true,"default":"None"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","optional":true,"default":"Standard"}}}},"azurerm_vmware_cluster":{"block":{"attributes":{"cluster_node_count":{"type":"number","required":true},"cluster_number":{"type":"number","computed":true},"hosts":{"type":["list","string"],"computed":true},"name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"vmware_cloud_id":{"type":"string","required":true}}}},"azurerm_vmware_express_route_authorization":{"block":{"attributes":{"express_route_authorization_id":{"type":"string","computed":true},"express_route_authorization_key":{"type":"string","computed":true},"name":{"type":"string","required":true},"private_cloud_id":{"type":"string","required":true}}}},"azurerm_vmware_netapp_volume_attachment":{"block":{"attributes":{"name":{"type":"string","required":true},"netapp_volume_id":{"type":"string","required":true},"vmware_cluster_id":{"type":"string","required":true}}}},"azurerm_vmware_private_cloud":{"block":{"attributes":{"circuit":{"type":["list",["object",{"express_route_id":"string","express_route_private_peering_id":"string","primary_subnet_cidr":"string","secondary_subnet_cidr":"string"}]],"computed":true},"hcx_cloud_manager_endpoint":{"type":"string","computed":true},"internet_connection_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"management_subnet_cidr":{"type":"string","computed":true},"name":{"type":"string","required":true},"network_subnet_cidr":{"type":"string","required":true},"nsxt_certificate_thumbprint":{"type":"string","computed":true},"nsxt_manager_endpoint":{"type":"string","computed":true},"nsxt_password":{"type":"string","optional":true},"provisioning_subnet_cidr":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"vcenter_certificate_thumbprint":{"type":"string","computed":true},"vcenter_password":{"type":"string","optional":true},"vcsa_endpoint":{"type":"string","computed":true},"vmotion_subnet_cidr":{"type":"string","computed":true}},"block_types":{"management_cluster":{"nesting_mode":3,"block":{"attributes":{"hosts":{"type":["list","string"],"computed":true},"id":{"type":"number","computed":true},"size":{"type":"number","required":true}}},"required":true}}}},"azurerm_voice_services_communications_gateway":{"block":{"attributes":{"api_bridge":{"type":"string","optional":true},"auto_generated_domain_name_label_scope":{"type":"string","optional":true,"default":"TenantReuse"},"codecs":{"type":"string","required":true},"connectivity":{"type":"string","required":true},"e911_type":{"type":"string","required":true},"emergency_dial_strings":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"microsoft_teams_voicemail_pilot_number":{"type":"string","optional":true},"name":{"type":"string","required":true},"on_prem_mcp_enabled":{"type":"bool","optional":true},"platforms":{"type":["list","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"service_location":{"nesting_mode":4,"block":{"attributes":{"allowed_media_source_address_prefixes":{"type":["set","string"],"optional":true},"allowed_signaling_source_address_prefixes":{"type":["set","string"],"optional":true},"esrp_addresses":{"type":["set","string"],"optional":true},"location":{"type":"string","required":true},"operator_addresses":{"type":["set","string"],"required":true}}},"required":true}}}},"azurerm_voice_services_communications_gateway_test_line":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"phone_number":{"type":"string","required":true},"purpose":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"voice_services_communications_gateway_id":{"type":"string","required":true}}}},"azurerm_vpn_gateway":{"block":{"attributes":{"bgp_route_translation_for_nat_enabled":{"type":"bool","optional":true,"default":false},"ip_configuration":{"type":["list",["object",{"id":"string","private_ip_address":"string","public_ip_address":"string"}]],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"routing_preference":{"type":"string","optional":true,"default":"Microsoft Network"},"scale_unit":{"type":"number","optional":true,"default":1},"tags":{"type":["map","string"],"optional":true},"virtual_hub_id":{"type":"string","required":true}},"block_types":{"bgp_settings":{"nesting_mode":3,"block":{"attributes":{"asn":{"type":"number","required":true},"bgp_peering_address":{"type":"string","computed":true},"peer_weight":{"type":"number","required":true}},"block_types":{"instance_0_bgp_peering_address":{"nesting_mode":3,"block":{"attributes":{"custom_ips":{"type":["set","string"],"required":true},"default_ips":{"type":["set","string"],"computed":true},"ip_configuration_id":{"type":"string","computed":true},"tunnel_ips":{"type":["set","string"],"computed":true}}},"optional":true,"computed":true},"instance_1_bgp_peering_address":{"nesting_mode":3,"block":{"attributes":{"custom_ips":{"type":["set","string"],"required":true},"default_ips":{"type":["set","string"],"computed":true},"ip_configuration_id":{"type":"string","computed":true},"tunnel_ips":{"type":["set","string"],"computed":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_vpn_gateway_connection":{"block":{"attributes":{"internet_security_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"remote_vpn_site_id":{"type":"string","required":true},"vpn_gateway_id":{"type":"string","required":true}},"block_types":{"routing":{"nesting_mode":3,"block":{"attributes":{"associated_route_table":{"type":"string","required":true},"inbound_route_map_id":{"type":"string","optional":true},"outbound_route_map_id":{"type":"string","optional":true}},"block_types":{"propagated_route_table":{"nesting_mode":3,"block":{"attributes":{"labels":{"type":["set","string"],"optional":true},"route_table_ids":{"type":["list","string"],"required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"traffic_selector_policy":{"nesting_mode":4,"block":{"attributes":{"local_address_ranges":{"type":["set","string"],"required":true},"remote_address_ranges":{"type":["set","string"],"required":true}}},"optional":true},"vpn_link":{"nesting_mode":3,"block":{"attributes":{"bandwidth_mbps":{"type":"number","optional":true,"default":10},"bgp_enabled":{"type":"bool","optional":true,"default":false},"connection_mode":{"type":"string","optional":true,"default":"Default"},"dpd_timeout_seconds":{"type":"number","optional":true},"egress_nat_rule_ids":{"type":["set","string"],"optional":true},"ingress_nat_rule_ids":{"type":["set","string"],"optional":true},"local_azure_ip_address_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"policy_based_traffic_selector_enabled":{"type":"bool","optional":true,"default":false},"protocol":{"type":"string","optional":true,"default":"IKEv2"},"ratelimit_enabled":{"type":"bool","optional":true,"default":false},"route_weight":{"type":"number","optional":true,"default":0},"shared_key":{"type":"string","optional":true,"computed":true},"vpn_site_link_id":{"type":"string","required":true}},"block_types":{"custom_bgp_address":{"nesting_mode":4,"block":{"attributes":{"ip_address":{"type":"string","required":true},"ip_configuration_id":{"type":"string","required":true}}},"optional":true},"ipsec_policy":{"nesting_mode":3,"block":{"attributes":{"dh_group":{"type":"string","required":true},"encryption_algorithm":{"type":"string","required":true},"ike_encryption_algorithm":{"type":"string","required":true},"ike_integrity_algorithm":{"type":"string","required":true},"integrity_algorithm":{"type":"string","required":true},"pfs_group":{"type":"string","required":true},"sa_data_size_kb":{"type":"number","required":true},"sa_lifetime_sec":{"type":"number","required":true}}},"optional":true}}},"required":true}}}},"azurerm_vpn_gateway_nat_rule":{"block":{"attributes":{"ip_configuration_id":{"type":"string","optional":true},"mode":{"type":"string","optional":true,"default":"EgressSnat"},"name":{"type":"string","required":true},"type":{"type":"string","optional":true,"default":"Static"},"vpn_gateway_id":{"type":"string","required":true}},"block_types":{"external_mapping":{"nesting_mode":3,"block":{"attributes":{"address_space":{"type":"string","required":true},"port_range":{"type":"string","optional":true}}},"optional":true},"internal_mapping":{"nesting_mode":3,"block":{"attributes":{"address_space":{"type":"string","required":true},"port_range":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_vpn_server_configuration":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"vpn_authentication_types":{"type":["list","string"],"required":true},"vpn_protocols":{"type":["set","string"],"optional":true,"computed":true}},"block_types":{"azure_active_directory_authentication":{"nesting_mode":3,"block":{"attributes":{"audience":{"type":"string","required":true},"issuer":{"type":"string","required":true},"tenant":{"type":"string","required":true}}},"optional":true},"client_revoked_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"thumbprint":{"type":"string","required":true}}},"optional":true},"client_root_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"public_cert_data":{"type":"string","required":true}}},"optional":true},"ipsec_policy":{"nesting_mode":3,"block":{"attributes":{"dh_group":{"type":"string","required":true},"ike_encryption":{"type":"string","required":true},"ike_integrity":{"type":"string","required":true},"ipsec_encryption":{"type":"string","required":true},"ipsec_integrity":{"type":"string","required":true},"pfs_group":{"type":"string","required":true},"sa_data_size_kilobytes":{"type":"number","required":true},"sa_lifetime_seconds":{"type":"number","required":true}}},"optional":true},"radius":{"nesting_mode":3,"block":{"block_types":{"client_root_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"thumbprint":{"type":"string","required":true}}},"optional":true},"server":{"nesting_mode":3,"block":{"attributes":{"address":{"type":"string","required":true},"score":{"type":"number","required":true},"secret":{"type":"string","required":true}}},"optional":true},"server_root_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"public_cert_data":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_vpn_server_configuration_policy_group":{"block":{"attributes":{"is_default":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":0},"vpn_server_configuration_id":{"type":"string","required":true}},"block_types":{"policy":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_vpn_site":{"block":{"attributes":{"address_cidrs":{"type":["set","string"],"optional":true},"device_model":{"type":"string","optional":true},"device_vendor":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_wan_id":{"type":"string","required":true}},"block_types":{"link":{"nesting_mode":3,"block":{"attributes":{"fqdn":{"type":"string","optional":true},"id":{"type":"string","computed":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","required":true},"provider_name":{"type":"string","optional":true},"speed_in_mbps":{"type":"number","optional":true,"default":0}},"block_types":{"bgp":{"nesting_mode":3,"block":{"attributes":{"asn":{"type":"number","required":true},"peering_address":{"type":"string","required":true}}},"optional":true}}},"optional":true},"o365_policy":{"nesting_mode":3,"block":{"block_types":{"traffic_category":{"nesting_mode":3,"block":{"attributes":{"allow_endpoint_enabled":{"type":"bool","optional":true,"default":false},"default_endpoint_enabled":{"type":"bool","optional":true,"default":false},"optimize_endpoint_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_web_app_active_slot":{"block":{"attributes":{"last_successful_swap":{"type":"string","computed":true},"overwrite_network_config":{"type":"bool","optional":true,"default":true},"slot_id":{"type":"string","required":true}}}},"azurerm_web_app_hybrid_connection":{"block":{"attributes":{"hostname":{"type":"string","required":true},"namespace_name":{"type":"string","computed":true},"port":{"type":"number","required":true},"relay_id":{"type":"string","required":true},"relay_name":{"type":"string","computed":true},"send_key_name":{"type":"string","optional":true,"default":"RootManageSharedAccessKey"},"send_key_value":{"type":"string","computed":true},"service_bus_namespace":{"type":"string","computed":true},"service_bus_suffix":{"type":"string","computed":true},"web_app_id":{"type":"string","required":true}}}},"azurerm_web_application_firewall_policy":{"block":{"attributes":{"http_listener_ids":{"type":["list","string"],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"path_based_rule_ids":{"type":["list","string"],"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"custom_rules":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"group_rate_limit_by":{"type":"string","optional":true},"name":{"type":"string","optional":true},"priority":{"type":"number","required":true},"rate_limit_duration":{"type":"string","optional":true},"rate_limit_threshold":{"type":"number","optional":true},"rule_type":{"type":"string","required":true}},"block_types":{"match_conditions":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negation_condition":{"type":"bool","optional":true},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}},"block_types":{"match_variables":{"nesting_mode":3,"block":{"attributes":{"selector":{"type":"string","optional":true},"variable_name":{"type":"string","required":true}}},"required":true}}},"required":true}}},"optional":true},"managed_rules":{"nesting_mode":3,"block":{"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"selector":{"type":"string","required":true},"selector_match_operator":{"type":"string","required":true}},"block_types":{"excluded_rule_set":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","optional":true,"default":"OWASP"},"version":{"type":"string","optional":true,"default":"3.2"}},"block_types":{"rule_group":{"nesting_mode":3,"block":{"attributes":{"excluded_rules":{"type":["list","string"],"optional":true},"rule_group_name":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"managed_rule_set":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","optional":true,"default":"OWASP"},"version":{"type":"string","required":true}},"block_types":{"rule_group_override":{"nesting_mode":3,"block":{"attributes":{"rule_group_name":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":false},"id":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"required":true}}},"required":true},"policy_settings":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"file_upload_enforcement":{"type":"bool","optional":true,"computed":true},"file_upload_limit_in_mb":{"type":"number","optional":true,"default":100},"js_challenge_cookie_expiration_in_minutes":{"type":"number","optional":true,"default":30},"max_request_body_size_in_kb":{"type":"number","optional":true,"default":128},"mode":{"type":"string","optional":true,"default":"Prevention"},"request_body_check":{"type":"bool","optional":true,"default":true},"request_body_enforcement":{"type":"bool","optional":true,"default":true},"request_body_inspect_limit_in_kb":{"type":"number","optional":true,"default":128}},"block_types":{"log_scrubbing":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"match_variable":{"type":"string","required":true},"selector":{"type":"string","optional":true},"selector_match_operator":{"type":"string","optional":true,"default":"Equals"}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_web_pubsub":{"block":{"attributes":{"aad_auth_enabled":{"type":"bool","optional":true,"default":true},"capacity":{"type":"number","optional":true,"default":1},"external_ip":{"type":"string","computed":true},"hostname":{"type":"string","computed":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"public_port":{"type":"number","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"server_port":{"type":"number","computed":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tls_client_cert_enabled":{"type":"bool","optional":true,"default":false},"version":{"type":"string","computed":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"live_trace":{"nesting_mode":3,"block":{"attributes":{"connectivity_logs_enabled":{"type":"bool","optional":true,"default":true},"enabled":{"type":"bool","optional":true,"default":true},"http_request_logs_enabled":{"type":"bool","optional":true,"default":true},"messaging_logs_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_web_pubsub_custom_certificate":{"block":{"attributes":{"certificate_version":{"type":"string","computed":true},"custom_certificate_id":{"type":"string","required":true},"name":{"type":"string","required":true},"web_pubsub_id":{"type":"string","required":true}}}},"azurerm_web_pubsub_custom_domain":{"block":{"attributes":{"domain_name":{"type":"string","required":true},"name":{"type":"string","required":true},"web_pubsub_custom_certificate_id":{"type":"string","required":true},"web_pubsub_id":{"type":"string","required":true}}}},"azurerm_web_pubsub_hub":{"block":{"attributes":{"anonymous_connections_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"web_pubsub_id":{"type":"string","required":true}},"block_types":{"event_handler":{"nesting_mode":3,"block":{"attributes":{"system_events":{"type":["set","string"],"optional":true},"url_template":{"type":"string","required":true},"user_event_pattern":{"type":"string","optional":true}},"block_types":{"auth":{"nesting_mode":3,"block":{"attributes":{"managed_identity_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"event_listener":{"nesting_mode":3,"block":{"attributes":{"eventhub_name":{"type":"string","required":true},"eventhub_namespace_name":{"type":"string","required":true},"system_event_name_filter":{"type":["list","string"],"optional":true},"user_event_name_filter":{"type":["list","string"],"optional":true}}},"optional":true}}}},"azurerm_web_pubsub_network_acl":{"block":{"attributes":{"default_action":{"type":"string","optional":true,"default":"Deny"},"web_pubsub_id":{"type":"string","required":true}},"block_types":{"private_endpoint":{"nesting_mode":4,"block":{"attributes":{"allowed_request_types":{"type":["set","string"],"optional":true},"denied_request_types":{"type":["set","string"],"optional":true},"id":{"type":"string","required":true}}},"optional":true},"public_network":{"nesting_mode":3,"block":{"attributes":{"allowed_request_types":{"type":["set","string"],"optional":true,"conflicts_with":["public_network.0.denied_request_types"]},"denied_request_types":{"type":["set","string"],"optional":true,"conflicts_with":["public_network.0.allowed_request_types"]}}},"required":true}}}},"azurerm_web_pubsub_shared_private_link_resource":{"block":{"attributes":{"name":{"type":"string","required":true},"request_message":{"type":"string","optional":true},"status":{"type":"string","computed":true},"subresource_name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"web_pubsub_id":{"type":"string","required":true}}}},"azurerm_web_pubsub_socketio":{"block":{"attributes":{"aad_auth_enabled":{"type":"bool","optional":true,"default":true},"external_ip":{"type":"string","computed":true},"hostname":{"type":"string","computed":true},"live_trace_connectivity_logs_enabled":{"type":"bool","optional":true,"default":true},"live_trace_enabled":{"type":"bool","optional":true,"default":true},"live_trace_http_request_logs_enabled":{"type":"bool","optional":true,"default":true},"live_trace_messaging_logs_enabled":{"type":"bool","optional":true,"default":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"public_port":{"type":"number","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"server_port":{"type":"number","computed":true},"service_mode":{"type":"string","optional":true,"default":"Default"},"tags":{"type":["map","string"],"optional":true},"tls_client_cert_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_windows_function_app":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"builtin_logging_enabled":{"type":"bool","optional":true,"default":true},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Optional"},"content_share_force_disabled":{"type":"bool","optional":true,"default":false},"custom_domain_verification_id":{"type":"string","computed":true},"daily_memory_time_quota":{"type":"number","optional":true,"default":0},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"functions_extension_version":{"type":"string","optional":true,"default":"~4"},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"computed":true},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_plan_id":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","optional":true,"conflicts_with":["storage_uses_managed_identity","storage_key_vault_secret_id"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_key_vault_secret_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_uses_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["storage_account_access_key","storage_key_vault_secret_id"]},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"computed":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"app_scale_limit":{"type":"number","optional":true,"computed":true},"application_insights_connection_string":{"type":"string","optional":true},"application_insights_key":{"type":"string","optional":true},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"windows_fx_version":{"type":"string","computed":true},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"app_service_logs":{"nesting_mode":3,"block":{"attributes":{"disk_quota_mb":{"type":"number","optional":true,"default":35},"retention_period_days":{"type":"number","optional":true}}},"optional":true},"application_stack":{"nesting_mode":3,"block":{"attributes":{"dotnet_version":{"type":"string","optional":true,"default":"v4.0","exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"powershell_core_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"use_custom_runtime":{"type":"bool","optional":true,"computed":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"use_dotnet_isolated_runtime":{"type":"bool","optional":true,"computed":true,"conflicts_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]}}},"optional":true,"computed":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"sticky_settings":{"nesting_mode":3,"block":{"attributes":{"app_setting_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]},"connection_string_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]}}},"optional":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_windows_function_app_slot":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"builtin_logging_enabled":{"type":"bool","optional":true,"default":true},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Optional"},"content_share_force_disabled":{"type":"bool","optional":true,"default":false},"custom_domain_verification_id":{"type":"string","computed":true},"daily_memory_time_quota":{"type":"number","optional":true,"default":0},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"function_app_id":{"type":"string","required":true},"functions_extension_version":{"type":"string","optional":true,"default":"~4"},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"service_plan_id":{"type":"string","optional":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","optional":true,"conflicts_with":["storage_uses_managed_identity","storage_key_vault_secret_id"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_key_vault_secret_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_uses_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["storage_account_access_key","storage_key_vault_secret_id"]},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"computed":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"app_scale_limit":{"type":"number","optional":true,"computed":true},"application_insights_connection_string":{"type":"string","optional":true},"application_insights_key":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"default":0},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"windows_fx_version":{"type":"string","computed":true},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"app_service_logs":{"nesting_mode":3,"block":{"attributes":{"disk_quota_mb":{"type":"number","optional":true,"default":35},"retention_period_days":{"type":"number","optional":true}}},"optional":true},"application_stack":{"nesting_mode":3,"block":{"attributes":{"dotnet_version":{"type":"string","optional":true,"default":"v4.0","exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"powershell_core_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"use_custom_runtime":{"type":"bool","optional":true,"computed":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"use_dotnet_isolated_runtime":{"type":"bool","optional":true,"computed":true,"conflicts_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]}}},"optional":true,"computed":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_windows_virtual_machine":{"block":{"attributes":{"admin_password":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"],"required_with":["admin_username"]},"admin_username":{"type":"string","optional":true,"exactly_one_of":["admin_username","os_managed_disk_id"],"required_with":["admin_password"]},"allow_extension_operations":{"type":"bool","optional":true,"computed":true},"automatic_updates_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["enable_automatic_updates","os_managed_disk_id"]},"availability_set_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id","virtual_machine_scale_set_id","zone"]},"bypass_platform_safety_checks_on_user_schedule_enabled":{"type":"bool","optional":true,"default":false,"conflicts_with":["os_managed_disk_id"]},"capacity_reservation_group_id":{"type":"string","optional":true,"conflicts_with":["availability_set_id","proximity_placement_group_id"]},"computer_name":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"custom_data":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"]},"dedicated_host_group_id":{"type":"string","optional":true,"conflicts_with":["dedicated_host_id"]},"dedicated_host_id":{"type":"string","optional":true,"conflicts_with":["dedicated_host_group_id"]},"disk_controller_type":{"type":"string","optional":true,"computed":true},"edge_zone":{"type":"string","optional":true},"enable_automatic_updates":{"type":"bool","optional":true,"computed":true,"conflicts_with":["automatic_updates_enabled","os_managed_disk_id"]},"encryption_at_host_enabled":{"type":"bool","optional":true},"eviction_policy":{"type":"string","optional":true},"extensions_time_budget":{"type":"string","optional":true,"default":"PT1H30M"},"hotpatching_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"license_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"max_bid_price":{"type":"number","optional":true,"default":-1},"name":{"type":"string","required":true},"network_interface_ids":{"type":["list","string"],"required":true},"os_managed_disk_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"patch_assessment_mode":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"patch_mode":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"platform_fault_domain":{"type":"number","optional":true,"default":-1,"required_with":["virtual_machine_scale_set_id"]},"priority":{"type":"string","optional":true,"default":"Regular"},"private_ip_address":{"type":"string","computed":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"provision_vm_agent":{"type":"bool","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"proximity_placement_group_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id"]},"public_ip_address":{"type":"string","computed":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"reboot_setting":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"]},"resource_group_name":{"type":"string","required":true},"secure_boot_enabled":{"type":"bool","optional":true},"size":{"type":"string","required":true},"source_image_id":{"type":"string","optional":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"tags":{"type":["map","string"],"optional":true},"timezone":{"type":"string","optional":true},"user_data":{"type":"string","optional":true},"virtual_machine_id":{"type":"string","computed":true},"virtual_machine_scale_set_id":{"type":"string","optional":true,"conflicts_with":["availability_set_id"]},"vm_agent_platform_updates_enabled":{"type":"bool","optional":true,"computed":true},"vtpm_enabled":{"type":"bool","optional":true},"zone":{"type":"string","optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"hibernation_enabled":{"type":"bool","optional":true,"default":false},"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"additional_unattend_content":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"setting":{"type":"string","required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"storage_account_uri":{"type":"string","optional":true}}},"optional":true},"gallery_application":{"nesting_mode":3,"block":{"attributes":{"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":false},"configuration_blob_uri":{"type":"string","optional":true},"order":{"type":"number","optional":true,"default":0},"tag":{"type":"string","optional":true},"treat_failure_as_deployment_failure_enabled":{"type":"bool","optional":true,"default":false},"version_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.secure_vm_disk_encryption_set_id"]},"disk_size_gb":{"type":"number","optional":true,"computed":true},"id":{"type":"string","computed":true},"name":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"secure_vm_disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.disk_encryption_set_id"]},"security_encryption_type":{"type":"string","optional":true},"storage_account_type":{"type":"string","optional":true,"computed":true,"exactly_one_of":["os_managed_disk_id","os_disk.0.storage_account_type"]},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"diff_disk_settings":{"nesting_mode":3,"block":{"attributes":{"option":{"type":"string","required":true},"placement":{"type":"string","optional":true,"default":"CacheDisk"}}},"optional":true,"conflicts_with":["os_managed_disk_id"]}}},"required":true},"os_image_notification":{"nesting_mode":3,"block":{"attributes":{"timeout":{"type":"string","optional":true,"default":"PT15M"}}},"optional":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"store":{"type":"string","required":true},"url":{"type":"string","required":true}}},"required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]},"source_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"termination_notification":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"timeout":{"type":"string","optional":true,"default":"PT5M"}}},"optional":true,"computed":true},"winrm_listener":{"nesting_mode":4,"block":{"attributes":{"certificate_url":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]}}}},"azurerm_windows_virtual_machine_scale_set":{"block":{"attributes":{"admin_password":{"type":"string","required":true},"admin_username":{"type":"string","required":true},"capacity_reservation_group_id":{"type":"string","optional":true,"conflicts_with":["proximity_placement_group_id"]},"computer_name_prefix":{"type":"string","optional":true,"computed":true},"custom_data":{"type":"string","optional":true},"do_not_run_extensions_on_overprovisioned_machines":{"type":"bool","optional":true,"default":false},"edge_zone":{"type":"string","optional":true},"enable_automatic_updates":{"type":"bool","optional":true,"default":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"eviction_policy":{"type":"string","optional":true},"extension_operations_enabled":{"type":"bool","optional":true,"default":true},"extensions_time_budget":{"type":"string","optional":true,"default":"PT1H30M"},"health_probe_id":{"type":"string","optional":true},"host_group_id":{"type":"string","optional":true},"instances":{"type":"number","required":true},"license_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"max_bid_price":{"type":"number","optional":true,"default":-1},"name":{"type":"string","required":true},"overprovision":{"type":"bool","optional":true,"default":true},"platform_fault_domain_count":{"type":"number","optional":true,"computed":true},"priority":{"type":"string","optional":true,"default":"Regular"},"provision_vm_agent":{"type":"bool","optional":true,"default":true},"proximity_placement_group_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id"]},"resource_group_name":{"type":"string","required":true},"secure_boot_enabled":{"type":"bool","optional":true},"single_placement_group":{"type":"bool","optional":true,"default":true},"sku":{"type":"string","required":true},"source_image_id":{"type":"string","optional":true,"exactly_one_of":["source_image_id","source_image_reference"]},"tags":{"type":["map","string"],"optional":true},"timezone":{"type":"string","optional":true},"unique_id":{"type":"string","computed":true},"upgrade_mode":{"type":"string","optional":true,"default":"Manual"},"user_data":{"type":"string","optional":true},"vtpm_enabled":{"type":"bool","optional":true},"zone_balance":{"type":"bool","optional":true,"default":false},"zones":{"type":["set","string"],"optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"additional_unattend_content":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"setting":{"type":"string","required":true}}},"optional":true},"automatic_instance_repair":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"grace_period":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"automatic_os_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"disable_automatic_rollback":{"type":"bool","required":true},"enable_automatic_os_upgrade":{"type":"bool","required":true}}},"optional":true},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"storage_account_uri":{"type":"string","optional":true}}},"optional":true},"data_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"create_option":{"type":"string","optional":true,"default":"Empty"},"disk_encryption_set_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","required":true},"lun":{"type":"number","required":true},"name":{"type":"string","optional":true},"storage_account_type":{"type":"string","required":true},"ultra_ssd_disk_iops_read_write":{"type":"number","optional":true,"computed":true},"ultra_ssd_disk_mbps_read_write":{"type":"number","optional":true,"computed":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"extension":{"nesting_mode":4,"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true,"default":true},"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":false},"force_update_tag":{"type":"string","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"provision_after_extensions":{"type":["list","string"],"optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true}},"block_types":{"protected_settings_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"gallery_application":{"nesting_mode":3,"block":{"attributes":{"configuration_blob_uri":{"type":"string","optional":true},"order":{"type":"number","optional":true,"default":0},"tag":{"type":"string","optional":true},"version_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"auxiliary_mode":{"type":"string","optional":true},"auxiliary_sku":{"type":"string","optional":true},"dns_servers":{"type":["list","string"],"optional":true},"enable_accelerated_networking":{"type":"bool","optional":true,"default":false},"enable_ip_forwarding":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"network_security_group_id":{"type":"string","optional":true},"primary":{"type":"bool","optional":true,"default":false}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"application_gateway_backend_address_pool_ids":{"type":["set","string"],"optional":true},"application_security_group_ids":{"type":["set","string"],"optional":true},"load_balancer_backend_address_pool_ids":{"type":["set","string"],"optional":true},"load_balancer_inbound_nat_rules_ids":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"public_ip_address":{"nesting_mode":3,"block":{"attributes":{"domain_name_label":{"type":"string","optional":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"public_ip_prefix_id":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"ip_tag":{"nesting_mode":3,"block":{"attributes":{"tag":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"required":true}}},"required":true},"os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.secure_vm_disk_encryption_set_id"]},"disk_size_gb":{"type":"number","optional":true,"computed":true},"secure_vm_disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.disk_encryption_set_id"]},"security_encryption_type":{"type":"string","optional":true},"storage_account_type":{"type":"string","required":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"diff_disk_settings":{"nesting_mode":3,"block":{"attributes":{"option":{"type":"string","required":true},"placement":{"type":"string","optional":true,"default":"CacheDisk"}}},"optional":true}}},"required":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"rolling_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"cross_zone_upgrades_enabled":{"type":"bool","optional":true},"max_batch_instance_percent":{"type":"number","required":true},"max_unhealthy_instance_percent":{"type":"number","required":true},"max_unhealthy_upgraded_instance_percent":{"type":"number","required":true},"maximum_surge_instances_enabled":{"type":"bool","optional":true},"pause_time_between_batches":{"type":"string","required":true},"prioritize_unhealthy_instances_enabled":{"type":"bool","optional":true}}},"optional":true},"scale_in":{"nesting_mode":3,"block":{"attributes":{"force_deletion_enabled":{"type":"bool","optional":true,"default":false},"rule":{"type":"string","optional":true,"default":"Default"}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"store":{"type":"string","required":true},"url":{"type":"string","required":true}}},"required":true}}},"optional":true},"source_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["source_image_id","source_image_reference"]},"spot_restore":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":false},"timeout":{"type":"string","optional":true,"default":"PT1H"}}},"optional":true,"computed":true},"termination_notification":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"timeout":{"type":"string","optional":true,"default":"PT5M"}}},"optional":true,"computed":true},"winrm_listener":{"nesting_mode":4,"block":{"attributes":{"certificate_url":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"optional":true}}}},"azurerm_windows_web_app":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"client_affinity_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Required"},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_plan_id":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages":{"type":"bool","optional":true,"default":false},"failed_request_tracing":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","required":true}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","optional":true,"default":0},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"]}}},"optional":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"linux_fx_version":{"type":"string","computed":true},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"local_mysql_enabled":{"type":"bool","optional":true,"default":false},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"windows_fx_version":{"type":"string","computed":true},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"application_stack":{"nesting_mode":3,"block":{"attributes":{"current_stack":{"type":"string","optional":true,"computed":true},"docker_image_name":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"docker_registry_password":{"type":"string","optional":true},"docker_registry_url":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.docker_image_name"]},"docker_registry_username":{"type":"string","optional":true},"dotnet_core_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"dotnet_version":{"type":"string","optional":true,"computed":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"java_container":{"type":"string","optional":true,"conflicts_with":["site_config.0.application_stack.0.tomcat_version"],"required_with":["site_config.0.application_stack.0.java_container_version"]},"java_container_version":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_container"]},"java_embedded_server_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["site_config.0.application_stack.0.tomcat_version"],"required_with":["site_config.0.application_stack.0.java_version"]},"java_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"node_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"php_version":{"type":"string","optional":true,"computed":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"python":{"type":"bool","optional":true,"default":false,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"tomcat_version":{"type":"string","optional":true,"conflicts_with":["site_config.0.application_stack.0.java_embedded_server_enabled"],"required_with":["site_config.0.application_stack.0.java_version"]}}},"optional":true,"computed":true},"auto_heal_setting":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true},"minimum_process_execution_time":{"type":"string","optional":true,"computed":true}},"block_types":{"custom_action":{"nesting_mode":3,"block":{"attributes":{"executable":{"type":"string","required":true},"parameters":{"type":"string","optional":true}}},"optional":true}}},"required":true},"trigger":{"nesting_mode":3,"block":{"attributes":{"private_memory_kb":{"type":"number","optional":true}},"block_types":{"requests":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true}}},"optional":true},"slow_request":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"time_taken":{"type":"string","required":true}}},"optional":true},"slow_request_with_path":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"time_taken":{"type":"string","required":true}}},"optional":true},"status_code":{"nesting_mode":4,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"status_code_range":{"type":"string","required":true},"sub_status":{"type":"number","optional":true},"win32_status_code":{"type":"number","optional":true}}},"optional":true}}},"required":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"handler_mapping":{"nesting_mode":4,"block":{"attributes":{"arguments":{"type":"string","optional":true},"extension":{"type":"string","required":true},"script_processor_path":{"type":"string","required":true}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"virtual_application":{"nesting_mode":4,"block":{"attributes":{"physical_path":{"type":"string","required":true},"preload":{"type":"bool","required":true},"virtual_path":{"type":"string","required":true}},"block_types":{"virtual_directory":{"nesting_mode":4,"block":{"attributes":{"physical_path":{"type":"string","optional":true},"virtual_path":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"required":true},"sticky_settings":{"nesting_mode":3,"block":{"attributes":{"app_setting_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]},"connection_string_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]}}},"optional":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_windows_web_app_slot":{"block":{"attributes":{"app_service_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true},"client_affinity_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Required"},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"service_plan_id":{"type":"string","optional":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages":{"type":"bool","optional":true,"default":false},"failed_request_tracing":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","required":true}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","optional":true,"default":0},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"]}}},"optional":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"local_mysql_enabled":{"type":"bool","optional":true,"default":false},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"computed":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"windows_fx_version":{"type":"string","computed":true},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"application_stack":{"nesting_mode":3,"block":{"attributes":{"current_stack":{"type":"string","optional":true,"computed":true},"docker_image_name":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"docker_registry_password":{"type":"string","optional":true},"docker_registry_url":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.docker_image_name"]},"docker_registry_username":{"type":"string","optional":true},"dotnet_core_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"dotnet_version":{"type":"string","optional":true,"computed":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"java_container":{"type":"string","optional":true,"conflicts_with":["site_config.0.application_stack.0.tomcat_version"],"required_with":["site_config.0.application_stack.0.java_container_version"]},"java_container_version":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_container"]},"java_embedded_server_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["site_config.0.application_stack.0.tomcat_version"],"required_with":["site_config.0.application_stack.0.java_version"]},"java_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"node_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"php_version":{"type":"string","optional":true,"computed":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"python":{"type":"bool","optional":true,"default":false,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"tomcat_version":{"type":"string","optional":true,"conflicts_with":["site_config.0.application_stack.0.java_embedded_server_enabled"],"required_with":["site_config.0.application_stack.0.java_version"]}}},"optional":true,"computed":true},"auto_heal_setting":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true},"minimum_process_execution_time":{"type":"string","optional":true,"computed":true}},"block_types":{"custom_action":{"nesting_mode":3,"block":{"attributes":{"executable":{"type":"string","required":true},"parameters":{"type":"string","optional":true}}},"optional":true}}},"required":true},"trigger":{"nesting_mode":3,"block":{"attributes":{"private_memory_kb":{"type":"number","optional":true}},"block_types":{"requests":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true}}},"optional":true},"slow_request":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"time_taken":{"type":"string","required":true}}},"optional":true},"slow_request_with_path":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"time_taken":{"type":"string","required":true}}},"optional":true},"status_code":{"nesting_mode":4,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"status_code_range":{"type":"string","required":true},"sub_status":{"type":"number","optional":true},"win32_status_code":{"type":"number","optional":true}}},"optional":true}}},"required":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"handler_mapping":{"nesting_mode":4,"block":{"attributes":{"arguments":{"type":"string","optional":true},"extension":{"type":"string","required":true},"script_processor_path":{"type":"string","required":true}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"virtual_application":{"nesting_mode":4,"block":{"attributes":{"physical_path":{"type":"string","required":true},"preload":{"type":"bool","required":true},"virtual_path":{"type":"string","required":true}},"block_types":{"virtual_directory":{"nesting_mode":4,"block":{"attributes":{"physical_path":{"type":"string","optional":true},"virtual_path":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"required":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_workloads_sap_discovery_virtual_instance":{"block":{"attributes":{"central_server_virtual_machine_id":{"type":"string","required":true},"environment":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_resource_group_name":{"type":"string","optional":true},"managed_resources_network_access_type":{"type":"string","optional":true,"default":"Public"},"managed_storage_account_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sap_product":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_workloads_sap_single_node_virtual_instance":{"block":{"attributes":{"app_location":{"type":"string","required":true},"environment":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_resource_group_name":{"type":"string","optional":true},"managed_resources_network_access_type":{"type":"string","optional":true,"default":"Public"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sap_fqdn":{"type":"string","required":true},"sap_product":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"single_server_configuration":{"nesting_mode":3,"block":{"attributes":{"app_resource_group_name":{"type":"string","required":true},"database_type":{"type":"string","optional":true},"secondary_ip_enabled":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","required":true}},"block_types":{"disk_volume_configuration":{"nesting_mode":4,"block":{"attributes":{"number_of_disks":{"type":"number","required":true},"size_in_gb":{"type":"number","required":true},"sku_name":{"type":"string","required":true},"volume_name":{"type":"string","required":true}}},"optional":true},"virtual_machine_configuration":{"nesting_mode":3,"block":{"attributes":{"virtual_machine_size":{"type":"string","required":true}},"block_types":{"image":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"admin_username":{"type":"string","required":true},"ssh_private_key":{"type":"string","required":true},"ssh_public_key":{"type":"string","required":true}}},"required":true}}},"required":true},"virtual_machine_resource_names":{"nesting_mode":3,"block":{"attributes":{"host_name":{"type":"string","optional":true,"at_least_one_of":["single_server_configuration.0.virtual_machine_resource_names.0.data_disk","single_server_configuration.0.virtual_machine_resource_names.0.host_name","single_server_configuration.0.virtual_machine_resource_names.0.network_interface_names","single_server_configuration.0.virtual_machine_resource_names.0.os_disk_name","single_server_configuration.0.virtual_machine_resource_names.0.virtual_machine_name"]},"network_interface_names":{"type":["list","string"],"optional":true,"at_least_one_of":["single_server_configuration.0.virtual_machine_resource_names.0.data_disk","single_server_configuration.0.virtual_machine_resource_names.0.host_name","single_server_configuration.0.virtual_machine_resource_names.0.network_interface_names","single_server_configuration.0.virtual_machine_resource_names.0.os_disk_name","single_server_configuration.0.virtual_machine_resource_names.0.virtual_machine_name"]},"os_disk_name":{"type":"string","optional":true,"at_least_one_of":["single_server_configuration.0.virtual_machine_resource_names.0.data_disk","single_server_configuration.0.virtual_machine_resource_names.0.host_name","single_server_configuration.0.virtual_machine_resource_names.0.network_interface_names","single_server_configuration.0.virtual_machine_resource_names.0.os_disk_name","single_server_configuration.0.virtual_machine_resource_names.0.virtual_machine_name"]},"virtual_machine_name":{"type":"string","optional":true,"at_least_one_of":["single_server_configuration.0.virtual_machine_resource_names.0.data_disk","single_server_configuration.0.virtual_machine_resource_names.0.host_name","single_server_configuration.0.virtual_machine_resource_names.0.network_interface_names","single_server_configuration.0.virtual_machine_resource_names.0.os_disk_name","single_server_configuration.0.virtual_machine_resource_names.0.virtual_machine_name"]}},"block_types":{"data_disk":{"nesting_mode":4,"block":{"attributes":{"names":{"type":["list","string"],"required":true},"volume_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["single_server_configuration.0.virtual_machine_resource_names.0.data_disk","single_server_configuration.0.virtual_machine_resource_names.0.host_name","single_server_configuration.0.virtual_machine_resource_names.0.network_interface_names","single_server_configuration.0.virtual_machine_resource_names.0.os_disk_name","single_server_configuration.0.virtual_machine_resource_names.0.virtual_machine_name"]}}},"optional":true}}},"required":true}}}},"azurerm_workloads_sap_three_tier_virtual_instance":{"block":{"attributes":{"app_location":{"type":"string","required":true},"environment":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_resource_group_name":{"type":"string","optional":true},"managed_resources_network_access_type":{"type":"string","optional":true,"default":"Public"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sap_fqdn":{"type":"string","required":true},"sap_product":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"three_tier_configuration":{"nesting_mode":3,"block":{"attributes":{"app_resource_group_name":{"type":"string","required":true},"high_availability_type":{"type":"string","optional":true},"secondary_ip_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"application_server_configuration":{"nesting_mode":3,"block":{"attributes":{"instance_count":{"type":"number","required":true},"subnet_id":{"type":"string","required":true}},"block_types":{"virtual_machine_configuration":{"nesting_mode":3,"block":{"attributes":{"virtual_machine_size":{"type":"string","required":true}},"block_types":{"image":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"admin_username":{"type":"string","required":true},"ssh_private_key":{"type":"string","required":true},"ssh_public_key":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true},"central_server_configuration":{"nesting_mode":3,"block":{"attributes":{"instance_count":{"type":"number","required":true},"subnet_id":{"type":"string","required":true}},"block_types":{"virtual_machine_configuration":{"nesting_mode":3,"block":{"attributes":{"virtual_machine_size":{"type":"string","required":true}},"block_types":{"image":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"admin_username":{"type":"string","required":true},"ssh_private_key":{"type":"string","required":true},"ssh_public_key":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true},"database_server_configuration":{"nesting_mode":3,"block":{"attributes":{"database_type":{"type":"string","optional":true},"instance_count":{"type":"number","required":true},"subnet_id":{"type":"string","required":true}},"block_types":{"disk_volume_configuration":{"nesting_mode":4,"block":{"attributes":{"number_of_disks":{"type":"number","required":true},"size_in_gb":{"type":"number","required":true},"sku_name":{"type":"string","required":true},"volume_name":{"type":"string","required":true}}},"optional":true},"virtual_machine_configuration":{"nesting_mode":3,"block":{"attributes":{"virtual_machine_size":{"type":"string","required":true}},"block_types":{"image":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"admin_username":{"type":"string","required":true},"ssh_private_key":{"type":"string","required":true},"ssh_public_key":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true},"resource_names":{"nesting_mode":3,"block":{"block_types":{"application_server":{"nesting_mode":3,"block":{"attributes":{"availability_set_name":{"type":"string","optional":true}},"block_types":{"virtual_machine":{"nesting_mode":3,"block":{"attributes":{"host_name":{"type":"string","optional":true},"network_interface_names":{"type":["list","string"],"optional":true},"os_disk_name":{"type":"string","optional":true},"virtual_machine_name":{"type":"string","optional":true}},"block_types":{"data_disk":{"nesting_mode":4,"block":{"attributes":{"names":{"type":["list","string"],"required":true},"volume_name":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"central_server":{"nesting_mode":3,"block":{"attributes":{"availability_set_name":{"type":"string","optional":true}},"block_types":{"load_balancer":{"nesting_mode":3,"block":{"attributes":{"backend_pool_names":{"type":["list","string"],"optional":true},"frontend_ip_configuration_names":{"type":["list","string"],"optional":true},"health_probe_names":{"type":["list","string"],"optional":true},"name":{"type":"string","optional":true}}},"optional":true},"virtual_machine":{"nesting_mode":3,"block":{"attributes":{"host_name":{"type":"string","optional":true},"network_interface_names":{"type":["list","string"],"optional":true},"os_disk_name":{"type":"string","optional":true},"virtual_machine_name":{"type":"string","optional":true}},"block_types":{"data_disk":{"nesting_mode":4,"block":{"attributes":{"names":{"type":["list","string"],"required":true},"volume_name":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"database_server":{"nesting_mode":3,"block":{"attributes":{"availability_set_name":{"type":"string","optional":true}},"block_types":{"load_balancer":{"nesting_mode":3,"block":{"attributes":{"backend_pool_names":{"type":["list","string"],"optional":true},"frontend_ip_configuration_names":{"type":["list","string"],"optional":true},"health_probe_names":{"type":["list","string"],"optional":true},"name":{"type":"string","optional":true}}},"optional":true},"virtual_machine":{"nesting_mode":3,"block":{"attributes":{"host_name":{"type":"string","optional":true},"network_interface_names":{"type":["list","string"],"optional":true},"os_disk_name":{"type":"string","optional":true},"virtual_machine_name":{"type":"string","optional":true}},"block_types":{"data_disk":{"nesting_mode":4,"block":{"attributes":{"names":{"type":["list","string"],"required":true},"volume_name":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"shared_storage":{"nesting_mode":3,"block":{"attributes":{"account_name":{"type":"string","optional":true},"private_endpoint_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"transport_create_and_mount":{"nesting_mode":3,"block":{"attributes":{"resource_group_id":{"type":"string","optional":true},"storage_account_name":{"type":"string","optional":true}}},"optional":true}}},"required":true}}}}}}`) + b := []byte(`{"Version":"","resource_schemas":{"azurerm_aadb2c_directory":{"block":{"attributes":{"billing_type":{"type":"string","computed":true},"country_code":{"type":"string","optional":true,"computed":true},"data_residency_location":{"type":"string","required":true},"display_name":{"type":"string","optional":true,"computed":true},"domain_name":{"type":"string","required":true},"effective_start_date":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","computed":true}}}},"azurerm_active_directory_domain_service":{"block":{"attributes":{"deployment_id":{"type":"string","computed":true},"domain_configuration_type":{"type":"string","optional":true},"domain_name":{"type":"string","required":true},"filtered_sync_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_id":{"type":"string","computed":true},"sku":{"type":"string","required":true},"sync_owner":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","computed":true},"version":{"type":"number","computed":true}},"block_types":{"initial_replica_set":{"nesting_mode":3,"block":{"attributes":{"domain_controller_ip_addresses":{"type":["list","string"],"computed":true},"external_access_ip_address":{"type":"string","computed":true},"id":{"type":"string","computed":true},"location":{"type":"string","computed":true},"service_status":{"type":"string","computed":true},"subnet_id":{"type":"string","required":true}}},"required":true},"notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true},"notify_dc_admins":{"type":"bool","optional":true,"default":false},"notify_global_admins":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true},"secure_ldap":{"nesting_mode":3,"block":{"attributes":{"certificate_expiry":{"type":"string","computed":true},"certificate_thumbprint":{"type":"string","computed":true},"enabled":{"type":"bool","required":true},"external_access_enabled":{"type":"bool","optional":true,"default":false},"pfx_certificate":{"type":"string","required":true},"pfx_certificate_password":{"type":"string","required":true},"public_certificate":{"type":"string","computed":true}}},"optional":true,"computed":true},"security":{"nesting_mode":3,"block":{"attributes":{"kerberos_armoring_enabled":{"type":"bool","optional":true,"default":false},"kerberos_rc4_encryption_enabled":{"type":"bool","optional":true,"default":false},"ntlm_v1_enabled":{"type":"bool","optional":true,"default":false},"sync_kerberos_passwords":{"type":"bool","optional":true,"default":false},"sync_ntlm_passwords":{"type":"bool","optional":true,"default":false},"sync_on_prem_passwords":{"type":"bool","optional":true,"default":false},"tls_v1_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_active_directory_domain_service_replica_set":{"block":{"attributes":{"domain_controller_ip_addresses":{"type":["list","string"],"computed":true},"domain_service_id":{"type":"string","required":true},"external_access_ip_address":{"type":"string","computed":true},"location":{"type":"string","required":true},"service_status":{"type":"string","computed":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_active_directory_domain_service_trust":{"block":{"attributes":{"domain_service_id":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"trusted_domain_dns_ips":{"type":["list","string"],"required":true},"trusted_domain_fqdn":{"type":"string","required":true}}}},"azurerm_advanced_threat_protection":{"block":{"attributes":{"enabled":{"type":"bool","required":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_advisor_suppression":{"block":{"attributes":{"name":{"type":"string","required":true},"recommendation_id":{"type":"string","required":true},"resource_id":{"type":"string","required":true},"suppression_id":{"type":"string","computed":true},"ttl":{"type":"string","optional":true}}}},"azurerm_ai_foundry":{"block":{"attributes":{"application_insights_id":{"type":"string","optional":true},"container_registry_id":{"type":"string","optional":true},"description":{"type":"string","optional":true},"discovery_url":{"type":"string","computed":true},"friendly_name":{"type":"string","optional":true},"high_business_impact_enabled":{"type":"bool","optional":true,"computed":true},"key_vault_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_user_assigned_identity":{"type":"string","optional":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","computed":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"key_id":{"type":"string","required":true},"key_vault_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true},"managed_network":{"nesting_mode":3,"block":{"attributes":{"isolation_mode":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_ai_foundry_project":{"block":{"attributes":{"ai_services_hub_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true},"high_business_impact_enabled":{"type":"bool","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_user_assigned_identity":{"type":"string","optional":true,"required_with":["identity"]},"project_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_ai_services":{"block":{"attributes":{"custom_subdomain_name":{"type":"string","optional":true},"endpoint":{"type":"string","computed":true},"fqdns":{"type":["list","string"],"optional":true},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_network_access_restricted":{"type":"bool","optional":true,"default":false},"primary_access_key":{"type":"string","computed":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","optional":true,"exactly_one_of":["customer_managed_key.0.managed_hsm_key_id","customer_managed_key.0.key_vault_key_id"]},"managed_hsm_key_id":{"type":"string","optional":true,"exactly_one_of":["customer_managed_key.0.managed_hsm_key_id","customer_managed_key.0.key_vault_key_id"]}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_acls":{"nesting_mode":3,"block":{"attributes":{"bypass":{"type":"string","optional":true,"default":"AzureServices"},"default_action":{"type":"string","required":true},"ip_rules":{"type":["set","string"],"optional":true}},"block_types":{"virtual_network_rules":{"nesting_mode":4,"block":{"attributes":{"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"required_with":["custom_subdomain_name"]},"storage":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"storage_account_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_analysis_services_server":{"block":{"attributes":{"admin_users":{"type":["set","string"],"optional":true},"backup_blob_container_uri":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"power_bi_service_enabled":{"type":"bool","optional":true},"querypool_connection_mode":{"type":"string","optional":true,"default":"All"},"resource_group_name":{"type":"string","required":true},"server_full_name":{"type":"string","computed":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ipv4_firewall_rule":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"range_end":{"type":"string","required":true},"range_start":{"type":"string","required":true}}},"optional":true}}}},"azurerm_api_connection":{"block":{"attributes":{"display_name":{"type":"string","optional":true,"computed":true},"managed_api_id":{"type":"string","required":true},"name":{"type":"string","required":true},"parameter_values":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_api_management":{"block":{"attributes":{"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"developer_portal_url":{"type":"string","computed":true},"gateway_disabled":{"type":"bool","optional":true,"default":false},"gateway_regional_url":{"type":"string","computed":true},"gateway_url":{"type":"string","computed":true},"location":{"type":"string","required":true},"management_api_url":{"type":"string","computed":true},"min_api_version":{"type":"string","optional":true},"name":{"type":"string","required":true},"notification_sender_email":{"type":"string","optional":true,"computed":true},"portal_url":{"type":"string","computed":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_address_id":{"type":"string","optional":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"publisher_email":{"type":"string","required":true},"publisher_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scm_url":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_type":{"type":"string","optional":true,"default":"None"},"zones":{"type":["set","string"],"optional":true}},"block_types":{"additional_location":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"computed":true},"gateway_disabled":{"type":"bool","optional":true,"default":false},"gateway_regional_url":{"type":"string","computed":true},"location":{"type":"string","required":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_address_id":{"type":"string","optional":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"virtual_network_configuration":{"nesting_mode":3,"block":{"attributes":{"subnet_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"certificate":{"nesting_mode":3,"block":{"attributes":{"certificate_password":{"type":"string","optional":true},"encoded_certificate":{"type":"string","required":true},"expiry":{"type":"string","computed":true},"store_name":{"type":"string","required":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true},"delegation":{"nesting_mode":3,"block":{"attributes":{"subscriptions_enabled":{"type":"bool","optional":true,"default":false},"url":{"type":"string","optional":true},"user_registration_enabled":{"type":"bool","optional":true,"default":false},"validation_key":{"type":"string","optional":true}}},"optional":true,"computed":true},"hostname_configuration":{"nesting_mode":3,"block":{"block_types":{"developer_portal":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["hostname_configuration.0.management","hostname_configuration.0.portal","hostname_configuration.0.developer_portal","hostname_configuration.0.proxy","hostname_configuration.0.scm"]},"management":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["hostname_configuration.0.management","hostname_configuration.0.portal","hostname_configuration.0.developer_portal","hostname_configuration.0.proxy","hostname_configuration.0.scm"]},"portal":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["hostname_configuration.0.management","hostname_configuration.0.portal","hostname_configuration.0.developer_portal","hostname_configuration.0.proxy","hostname_configuration.0.scm"]},"proxy":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"default_ssl_binding":{"type":"bool","optional":true,"computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["hostname_configuration.0.management","hostname_configuration.0.portal","hostname_configuration.0.developer_portal","hostname_configuration.0.proxy","hostname_configuration.0.scm"]},"scm":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["hostname_configuration.0.management","hostname_configuration.0.portal","hostname_configuration.0.developer_portal","hostname_configuration.0.proxy","hostname_configuration.0.scm"]}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"protocols":{"nesting_mode":3,"block":{"attributes":{"enable_http2":{"type":"bool","optional":true,"computed":true,"conflicts_with":["protocols.0.http2_enabled"]},"http2_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["protocols.0.enable_http2"]}}},"optional":true,"computed":true},"security":{"nesting_mode":3,"block":{"attributes":{"backend_ssl30_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_backend_ssl30"]},"backend_tls10_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_backend_tls10"]},"backend_tls11_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_backend_tls11"]},"enable_backend_ssl30":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.backend_ssl30_enabled"]},"enable_backend_tls10":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.backend_tls10_enabled"]},"enable_backend_tls11":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.backend_tls11_enabled"]},"enable_frontend_ssl30":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.frontend_ssl30_enabled"]},"enable_frontend_tls10":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.frontend_tls10_enabled"]},"enable_frontend_tls11":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.frontend_tls11_enabled"]},"frontend_ssl30_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_frontend_ssl30"]},"frontend_tls10_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_frontend_tls10"]},"frontend_tls11_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["security.0.enable_frontend_tls11"]},"tls_ecdhe_ecdsa_with_aes128_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_ecdhe_ecdsa_with_aes256_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_ecdhe_rsa_with_aes128_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_ecdhe_rsa_with_aes256_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes128_cbc_sha256_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes128_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes128_gcm_sha256_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes256_cbc_sha256_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes256_cbc_sha_ciphers_enabled":{"type":"bool","optional":true,"default":false},"tls_rsa_with_aes256_gcm_sha384_ciphers_enabled":{"type":"bool","optional":true,"default":false},"triple_des_ciphers_enabled":{"type":"bool","optional":true}}},"optional":true,"computed":true},"sign_in":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true}}},"optional":true,"computed":true},"sign_up":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true}},"block_types":{"terms_of_service":{"nesting_mode":3,"block":{"attributes":{"consent_required":{"type":"bool","required":true},"enabled":{"type":"bool","required":true},"text":{"type":"string","optional":true}}},"required":true}}},"optional":true,"computed":true},"tenant_access":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"primary_key":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true}}},"optional":true,"computed":true},"virtual_network_configuration":{"nesting_mode":3,"block":{"attributes":{"subnet_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_api_management_api":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_type":{"type":"string","optional":true,"computed":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true,"computed":true},"is_current":{"type":"bool","computed":true},"is_online":{"type":"bool","computed":true},"name":{"type":"string","required":true},"path":{"type":"string","optional":true,"computed":true},"protocols":{"type":["set","string"],"optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"revision":{"type":"string","required":true},"revision_description":{"type":"string","optional":true},"service_url":{"type":"string","optional":true,"computed":true},"source_api_id":{"type":"string","optional":true},"subscription_required":{"type":"bool","optional":true,"default":true},"terms_of_service_url":{"type":"string","optional":true},"version":{"type":"string","optional":true,"computed":true},"version_description":{"type":"string","optional":true},"version_set_id":{"type":"string","optional":true,"computed":true}},"block_types":{"contact":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","optional":true},"name":{"type":"string","optional":true},"url":{"type":"string","optional":true}}},"optional":true},"import":{"nesting_mode":3,"block":{"attributes":{"content_format":{"type":"string","required":true},"content_value":{"type":"string","required":true}},"block_types":{"wsdl_selector":{"nesting_mode":3,"block":{"attributes":{"endpoint_name":{"type":"string","required":true},"service_name":{"type":"string","required":true}}},"optional":true}}},"optional":true},"license":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true},"url":{"type":"string","optional":true}}},"optional":true},"oauth2_authorization":{"nesting_mode":3,"block":{"attributes":{"authorization_server_name":{"type":"string","required":true},"scope":{"type":"string","optional":true}}},"optional":true,"conflicts_with":["openid_authentication"]},"openid_authentication":{"nesting_mode":3,"block":{"attributes":{"bearer_token_sending_methods":{"type":["set","string"],"optional":true},"openid_provider_name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["oauth2_authorization"]},"subscription_key_parameter_names":{"nesting_mode":3,"block":{"attributes":{"header":{"type":"string","required":true},"query":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_api_management_api_diagnostic":{"block":{"attributes":{"always_log_errors":{"type":"bool","optional":true,"computed":true},"api_management_logger_id":{"type":"string","required":true},"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"http_correlation_protocol":{"type":"string","optional":true,"computed":true},"identifier":{"type":"string","required":true},"log_client_ip":{"type":"bool","optional":true,"computed":true},"operation_name_format":{"type":"string","optional":true,"default":"Name"},"resource_group_name":{"type":"string","required":true},"sampling_percentage":{"type":"number","optional":true,"computed":true},"verbosity":{"type":"string","optional":true,"computed":true}},"block_types":{"backend_request":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"backend_response":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"frontend_request":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"frontend_response":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_api_management_api_operation":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"method":{"type":"string","required":true},"operation_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"url_template":{"type":"string","required":true}},"block_types":{"request":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"query_parameter":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"representation":{"nesting_mode":3,"block":{"attributes":{"content_type":{"type":"string","required":true},"schema_id":{"type":"string","optional":true},"type_name":{"type":"string","optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"form_parameter":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"response":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"status_code":{"type":"number","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"representation":{"nesting_mode":3,"block":{"attributes":{"content_type":{"type":"string","required":true},"schema_id":{"type":"string","optional":true},"type_name":{"type":"string","optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"form_parameter":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}},"optional":true},"template_parameter":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"required":{"type":"bool","required":true},"schema_id":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_name":{"type":"string","optional":true},"values":{"type":["set","string"],"optional":true}},"block_types":{"example":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"external_value":{"type":"string","optional":true},"name":{"type":"string","required":true},"summary":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_api_management_api_operation_policy":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"operation_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"xml_content":{"type":"string","optional":true,"computed":true,"conflicts_with":["xml_link"]},"xml_link":{"type":"string","optional":true,"conflicts_with":["xml_content"]}}}},"azurerm_api_management_api_operation_tag":{"block":{"attributes":{"api_operation_id":{"type":"string","required":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_api_management_api_policy":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"xml_content":{"type":"string","optional":true,"computed":true,"conflicts_with":["xml_link"]},"xml_link":{"type":"string","optional":true,"conflicts_with":["xml_content"]}}}},"azurerm_api_management_api_release":{"block":{"attributes":{"api_id":{"type":"string","required":true},"name":{"type":"string","required":true},"notes":{"type":"string","optional":true}}}},"azurerm_api_management_api_schema":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"components":{"type":"string","optional":true,"exactly_one_of":["value","definitions","components"]},"content_type":{"type":"string","required":true},"definitions":{"type":"string","optional":true,"exactly_one_of":["value","definitions","components"]},"resource_group_name":{"type":"string","required":true},"schema_id":{"type":"string","required":true},"value":{"type":"string","optional":true,"exactly_one_of":["value","definitions","components"]}}}},"azurerm_api_management_api_tag":{"block":{"attributes":{"api_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_api_management_api_tag_description":{"block":{"attributes":{"api_tag_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"external_documentation_description":{"type":"string","optional":true},"external_documentation_url":{"type":"string","optional":true}}}},"azurerm_api_management_api_version_set":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"version_header_name":{"type":"string","optional":true,"conflicts_with":["version_query_name"]},"version_query_name":{"type":"string","optional":true,"conflicts_with":["version_header_name"]},"versioning_scheme":{"type":"string","required":true}}}},"azurerm_api_management_authorization_server":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"authorization_endpoint":{"type":"string","required":true},"authorization_methods":{"type":["set","string"],"required":true},"bearer_token_sending_methods":{"type":["set","string"],"optional":true},"client_authentication_method":{"type":["set","string"],"optional":true},"client_id":{"type":"string","required":true},"client_registration_endpoint":{"type":"string","required":true},"client_secret":{"type":"string","optional":true},"default_scope":{"type":"string","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"grant_types":{"type":["set","string"],"required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_owner_password":{"type":"string","optional":true},"resource_owner_username":{"type":"string","optional":true},"support_state":{"type":"bool","optional":true},"token_endpoint":{"type":"string","optional":true}},"block_types":{"token_body_parameter":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}}},"azurerm_api_management_backend":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_id":{"type":"string","optional":true},"title":{"type":"string","optional":true},"url":{"type":"string","required":true}},"block_types":{"circuit_breaker_rule":{"nesting_mode":3,"block":{"attributes":{"accept_retry_after_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"trip_duration":{"type":"string","required":true}},"block_types":{"failure_condition":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","optional":true,"exactly_one_of":["circuit_breaker_rule.0.failure_condition.0.count","circuit_breaker_rule.0.failure_condition.0.percentage"]},"error_reasons":{"type":["list","string"],"optional":true,"at_least_one_of":["circuit_breaker_rule.0.failure_condition.0.status_code_range","circuit_breaker_rule.0.failure_condition.0.error_reasons"]},"interval_duration":{"type":"string","required":true},"percentage":{"type":"number","optional":true,"exactly_one_of":["circuit_breaker_rule.0.failure_condition.0.count","circuit_breaker_rule.0.failure_condition.0.percentage"]}},"block_types":{"status_code_range":{"nesting_mode":3,"block":{"attributes":{"max":{"type":"number","required":true},"min":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["circuit_breaker_rule.0.failure_condition.0.status_code_range","circuit_breaker_rule.0.failure_condition.0.error_reasons"]}}},"required":true}}},"optional":true},"credentials":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":["list","string"],"optional":true,"at_least_one_of":["credentials.0.authorization","credentials.0.certificate","credentials.0.header","credentials.0.query"]},"header":{"type":["map","string"],"optional":true,"at_least_one_of":["credentials.0.authorization","credentials.0.certificate","credentials.0.header","credentials.0.query"]},"query":{"type":["map","string"],"optional":true,"at_least_one_of":["credentials.0.authorization","credentials.0.certificate","credentials.0.header","credentials.0.query"]}},"block_types":{"authorization":{"nesting_mode":3,"block":{"attributes":{"parameter":{"type":"string","optional":true,"at_least_one_of":["credentials.0.authorization.0.parameter","credentials.0.authorization.0.scheme"]},"scheme":{"type":"string","optional":true,"at_least_one_of":["credentials.0.authorization.0.parameter","credentials.0.authorization.0.scheme"]}}},"optional":true,"at_least_one_of":["credentials.0.authorization","credentials.0.certificate","credentials.0.header","credentials.0.query"]}}},"optional":true},"proxy":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"url":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"service_fabric_cluster":{"nesting_mode":3,"block":{"attributes":{"client_certificate_id":{"type":"string","optional":true,"computed":true},"client_certificate_thumbprint":{"type":"string","optional":true,"computed":true},"management_endpoints":{"type":["set","string"],"required":true},"max_partition_resolution_retries":{"type":"number","required":true},"server_certificate_thumbprints":{"type":["set","string"],"optional":true,"conflicts_with":["service_fabric_cluster.0.server_x509_name"]}},"block_types":{"server_x509_name":{"nesting_mode":4,"block":{"attributes":{"issuer_certificate_thumbprint":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["service_fabric_cluster.0.server_certificate_thumbprints"]}}},"optional":true},"tls":{"nesting_mode":3,"block":{"attributes":{"validate_certificate_chain":{"type":"bool","optional":true,"at_least_one_of":["tls.0.validate_certificate_chain","tls.0.validate_certificate_name"]},"validate_certificate_name":{"type":"bool","optional":true,"at_least_one_of":["tls.0.validate_certificate_chain","tls.0.validate_certificate_name"]}}},"optional":true}}}},"azurerm_api_management_certificate":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"data":{"type":"string","optional":true,"conflicts_with":["key_vault_secret_id","key_vault_identity_client_id"],"at_least_one_of":["data","key_vault_secret_id"]},"expiration":{"type":"string","computed":true},"key_vault_identity_client_id":{"type":"string","optional":true,"required_with":["key_vault_secret_id"]},"key_vault_secret_id":{"type":"string","optional":true,"conflicts_with":["data","password"],"at_least_one_of":["data","key_vault_secret_id"]},"name":{"type":"string","required":true},"password":{"type":"string","optional":true,"required_with":["data"]},"resource_group_name":{"type":"string","required":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_api_management_custom_domain":{"block":{"attributes":{"api_management_id":{"type":"string","required":true}},"block_types":{"developer_portal":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["management","portal","developer_portal","gateway","scm"]},"gateway":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"default_ssl_binding":{"type":"bool","optional":true,"computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["management","portal","developer_portal","gateway","scm"]},"management":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["management","portal","developer_portal","gateway","scm"]},"portal":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["management","portal","developer_portal","gateway","scm"]},"scm":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"certificate_password":{"type":"string","optional":true},"certificate_source":{"type":"string","computed":true},"certificate_status":{"type":"string","computed":true},"expiry":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"key_vault_certificate_id":{"type":"string","optional":true,"computed":true},"key_vault_id":{"type":"string","optional":true,"computed":true},"negotiate_client_certificate":{"type":"bool","optional":true,"default":false},"ssl_keyvault_identity_client_id":{"type":"string","optional":true},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["management","portal","developer_portal","gateway","scm"]}}}},"azurerm_api_management_diagnostic":{"block":{"attributes":{"always_log_errors":{"type":"bool","optional":true,"computed":true},"api_management_logger_id":{"type":"string","required":true},"api_management_name":{"type":"string","required":true},"http_correlation_protocol":{"type":"string","optional":true,"computed":true},"identifier":{"type":"string","required":true},"log_client_ip":{"type":"bool","optional":true,"computed":true},"operation_name_format":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"sampling_percentage":{"type":"number","optional":true,"computed":true},"verbosity":{"type":"string","optional":true,"computed":true}},"block_types":{"backend_request":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"backend_response":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"frontend_request":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true},"frontend_response":{"nesting_mode":3,"block":{"attributes":{"body_bytes":{"type":"number","optional":true},"headers_to_log":{"type":["set","string"],"optional":true}},"block_types":{"data_masking":{"nesting_mode":3,"block":{"block_types":{"headers":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"query_params":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_api_management_email_template":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"body":{"type":"string","required":true},"description":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"subject":{"type":"string","required":true},"template_name":{"type":"string","required":true},"title":{"type":"string","computed":true}}}},"azurerm_api_management_gateway":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"location_data":{"nesting_mode":3,"block":{"attributes":{"city":{"type":"string","optional":true},"district":{"type":"string","optional":true},"name":{"type":"string","required":true},"region":{"type":"string","optional":true}}},"required":true}}}},"azurerm_api_management_gateway_api":{"block":{"attributes":{"api_id":{"type":"string","required":true},"gateway_id":{"type":"string","required":true}}}},"azurerm_api_management_gateway_certificate_authority":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"certificate_name":{"type":"string","required":true},"gateway_name":{"type":"string","required":true},"is_trusted":{"type":"bool","optional":true}}}},"azurerm_api_management_gateway_host_name_configuration":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"certificate_id":{"type":"string","required":true},"gateway_name":{"type":"string","required":true},"host_name":{"type":"string","required":true},"http2_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"request_client_certificate_enabled":{"type":"bool","optional":true},"tls10_enabled":{"type":"bool","optional":true},"tls11_enabled":{"type":"bool","optional":true}}}},"azurerm_api_management_global_schema":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"schema_id":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_api_management_group":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"external_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"type":{"type":"string","optional":true,"default":"custom"}}}},"azurerm_api_management_group_user":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"group_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"user_id":{"type":"string","required":true}}}},"azurerm_api_management_identity_provider_aad":{"block":{"attributes":{"allowed_tenants":{"type":["list","string"],"required":true},"api_management_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_library":{"type":"string","optional":true},"client_secret":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"signin_tenant":{"type":"string","optional":true}}}},"azurerm_api_management_identity_provider_aadb2c":{"block":{"attributes":{"allowed_tenant":{"type":"string","required":true},"api_management_name":{"type":"string","required":true},"authority":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_library":{"type":"string","optional":true},"client_secret":{"type":"string","required":true},"password_reset_policy":{"type":"string","optional":true},"profile_editing_policy":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"signin_policy":{"type":"string","required":true},"signin_tenant":{"type":"string","required":true},"signup_policy":{"type":"string","required":true}}}},"azurerm_api_management_identity_provider_facebook":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"app_id":{"type":"string","required":true},"app_secret":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_identity_provider_google":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_identity_provider_microsoft":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_identity_provider_twitter":{"block":{"attributes":{"api_key":{"type":"string","required":true},"api_management_name":{"type":"string","required":true},"api_secret_key":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_logger":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"buffered":{"type":"bool","optional":true,"default":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_id":{"type":"string","optional":true}},"block_types":{"application_insights":{"nesting_mode":3,"block":{"attributes":{"connection_string":{"type":"string","optional":true,"conflicts_with":["application_insights.0.instrumentation_key"],"at_least_one_of":["application_insights.0.connection_string","application_insights.0.instrumentation_key"]},"instrumentation_key":{"type":"string","optional":true,"conflicts_with":["application_insights.0.connection_string"],"at_least_one_of":["application_insights.0.connection_string","application_insights.0.instrumentation_key"]}}},"optional":true,"conflicts_with":["eventhub"]},"eventhub":{"nesting_mode":3,"block":{"attributes":{"connection_string":{"type":"string","optional":true,"conflicts_with":["eventhub.0.endpoint_uri","eventhub.0.user_assigned_identity_client_id"],"at_least_one_of":["eventhub.0.connection_string","eventhub.0.endpoint_uri"]},"endpoint_uri":{"type":"string","optional":true,"conflicts_with":["eventhub.0.connection_string"],"at_least_one_of":["eventhub.0.connection_string","eventhub.0.endpoint_uri"]},"name":{"type":"string","required":true},"user_assigned_identity_client_id":{"type":"string","optional":true,"conflicts_with":["eventhub.0.connection_string"]}}},"optional":true,"conflicts_with":["application_insights"]}}}},"azurerm_api_management_named_value":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"secret":{"type":"bool","optional":true,"default":false},"tags":{"type":["list","string"],"optional":true},"value":{"type":"string","optional":true,"exactly_one_of":["value","value_from_key_vault"]}},"block_types":{"value_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"secret_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["value","value_from_key_vault"],"required_with":["secret"]}}}},"azurerm_api_management_notification_recipient_email":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"email":{"type":"string","required":true},"notification_type":{"type":"string","required":true}}}},"azurerm_api_management_notification_recipient_user":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"notification_type":{"type":"string","required":true},"user_id":{"type":"string","required":true}}}},"azurerm_api_management_openid_connect_provider":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"metadata_endpoint":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_policy":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"xml_content":{"type":"string","optional":true,"computed":true,"conflicts_with":["xml_link"],"exactly_one_of":["xml_link","xml_content"]},"xml_link":{"type":"string","optional":true,"conflicts_with":["xml_content"],"exactly_one_of":["xml_link","xml_content"]}}}},"azurerm_api_management_policy_fragment":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"format":{"type":"string","optional":true,"default":"xml"},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_api_management_product":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"approval_required":{"type":"bool","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"product_id":{"type":"string","required":true},"published":{"type":"bool","required":true},"resource_group_name":{"type":"string","required":true},"subscription_required":{"type":"bool","optional":true,"default":true},"subscriptions_limit":{"type":"number","optional":true},"terms":{"type":"string","optional":true}}}},"azurerm_api_management_product_api":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_name":{"type":"string","required":true},"product_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_product_group":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"group_name":{"type":"string","required":true},"product_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_product_policy":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"product_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"xml_content":{"type":"string","optional":true,"computed":true,"conflicts_with":["xml_link"]},"xml_link":{"type":"string","optional":true,"conflicts_with":["xml_content"]}}}},"azurerm_api_management_product_tag":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"api_management_product_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_api_management_redis_cache":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"cache_location":{"type":"string","optional":true,"default":"default"},"connection_string":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"redis_cache_id":{"type":"string","optional":true}}}},"azurerm_api_management_standalone_gateway":{"block":{"attributes":{"backend_subnet_id":{"type":"string","optional":true,"required_with":["virtual_network_type"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_type":{"type":"string","optional":true,"required_with":["backend_subnet_id"]}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_api_management_subscription":{"block":{"attributes":{"allow_tracing":{"type":"bool","optional":true,"default":true},"api_id":{"type":"string","optional":true,"conflicts_with":["product_id"]},"api_management_name":{"type":"string","required":true},"display_name":{"type":"string","required":true},"primary_key":{"type":"string","optional":true,"computed":true},"product_id":{"type":"string","optional":true,"conflicts_with":["api_id"]},"resource_group_name":{"type":"string","required":true},"secondary_key":{"type":"string","optional":true,"computed":true},"state":{"type":"string","optional":true,"default":"submitted"},"subscription_id":{"type":"string","optional":true,"computed":true},"user_id":{"type":"string","optional":true}}}},"azurerm_api_management_tag":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"display_name":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true}}}},"azurerm_api_management_user":{"block":{"attributes":{"api_management_name":{"type":"string","required":true},"confirmation":{"type":"string","optional":true},"email":{"type":"string","required":true},"first_name":{"type":"string","required":true},"last_name":{"type":"string","required":true},"note":{"type":"string","optional":true},"password":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"state":{"type":"string","optional":true,"computed":true},"user_id":{"type":"string","required":true}}}},"azurerm_api_management_workspace":{"block":{"attributes":{"api_management_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_api_management_workspace_api_version_set":{"block":{"attributes":{"api_management_workspace_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true},"version_header_name":{"type":"string","optional":true,"conflicts_with":["version_query_name"]},"version_query_name":{"type":"string","optional":true,"conflicts_with":["version_header_name"]},"versioning_scheme":{"type":"string","required":true}}}},"azurerm_api_management_workspace_certificate":{"block":{"attributes":{"api_management_workspace_id":{"type":"string","required":true},"certificate_data_base64":{"type":"string","optional":true,"exactly_one_of":["certificate_data_base64","key_vault_secret_id"]},"expiration":{"type":"string","computed":true},"key_vault_secret_id":{"type":"string","optional":true,"exactly_one_of":["certificate_data_base64","key_vault_secret_id"]},"name":{"type":"string","required":true},"password":{"type":"string","optional":true,"required_with":["certificate_data_base64"]},"subject":{"type":"string","computed":true},"thumbprint":{"type":"string","computed":true},"user_assigned_identity_client_id":{"type":"string","optional":true,"required_with":["key_vault_secret_id"]}}}},"azurerm_api_management_workspace_policy":{"block":{"attributes":{"api_management_workspace_id":{"type":"string","required":true},"xml_content":{"type":"string","optional":true,"computed":true,"exactly_one_of":["xml_link","xml_content"]},"xml_link":{"type":"string","optional":true,"exactly_one_of":["xml_link","xml_content"]}}}},"azurerm_api_management_workspace_policy_fragment":{"block":{"attributes":{"api_management_workspace_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"xml_content":{"type":"string","required":true},"xml_format":{"type":"string","optional":true,"default":"xml"}}}},"azurerm_app_configuration":{"block":{"attributes":{"data_plane_proxy_authentication_mode":{"type":"string","optional":true,"default":"Local"},"data_plane_proxy_private_link_delegation_enabled":{"type":"bool","optional":true,"default":false},"endpoint":{"type":"string","computed":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_read_key":{"type":["list",["object",{"connection_string":"string","id":"string","secret":"string"}]],"computed":true},"primary_write_key":{"type":["list",["object",{"connection_string":"string","id":"string","secret":"string"}]],"computed":true},"public_network_access":{"type":"string","optional":true},"purge_protection_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"secondary_read_key":{"type":["list",["object",{"connection_string":"string","id":"string","secret":"string"}]],"computed":true},"secondary_write_key":{"type":["list",["object",{"connection_string":"string","id":"string","secret":"string"}]],"computed":true},"sku":{"type":"string","optional":true,"default":"free"},"soft_delete_retention_days":{"type":"number","optional":true,"default":7},"tags":{"type":["map","string"],"optional":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"key_vault_key_identifier":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"replica":{"nesting_mode":4,"block":{"attributes":{"endpoint":{"type":"string","computed":true},"id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_app_configuration_feature":{"block":{"attributes":{"configuration_store_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true},"etag":{"type":"string","optional":true,"computed":true},"key":{"type":"string","optional":true,"computed":true},"label":{"type":"string","optional":true},"locked":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"percentage_filter_value":{"type":"number","optional":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"targeting_filter":{"nesting_mode":3,"block":{"attributes":{"default_rollout_percentage":{"type":"number","required":true},"users":{"type":["list","string"],"optional":true}},"block_types":{"groups":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"rollout_percentage":{"type":"number","required":true}}},"optional":true}}},"optional":true},"timewindow_filter":{"nesting_mode":3,"block":{"attributes":{"end":{"type":"string","optional":true},"start":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_app_configuration_key":{"block":{"attributes":{"configuration_store_id":{"type":"string","required":true},"content_type":{"type":"string","optional":true,"computed":true},"etag":{"type":"string","optional":true,"computed":true},"key":{"type":"string","required":true},"label":{"type":"string","optional":true},"locked":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","optional":true,"default":"kv"},"value":{"type":"string","optional":true,"conflicts_with":["vault_key_reference"]},"vault_key_reference":{"type":"string","optional":true,"conflicts_with":["value"]}}}},"azurerm_app_service":{"block":{"attributes":{"app_service_plan_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true,"computed":true},"client_affinity_enabled":{"type":"bool","optional":true,"default":false},"client_cert_enabled":{"type":"bool","optional":true,"default":false},"client_cert_mode":{"type":"string","optional":true,"computed":true},"custom_domain_verification_id":{"type":"string","computed":true},"default_site_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"password":"string","username":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_params":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"default_provider":{"type":"string","optional":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"retention_period_in_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages_enabled":{"type":"bool","optional":true,"default":false},"failed_request_tracing_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","optional":true,"default":"Off"}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"],"at_least_one_of":["logs.0.http_logs.0.azure_blob_storage","logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"],"at_least_one_of":["logs.0.http_logs.0.azure_blob_storage","logs.0.http_logs.0.file_system"]}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"acr_use_managed_identity_credentials":{"type":"bool","optional":true,"default":false},"acr_user_managed_identity_client_id":{"type":"string","optional":true},"always_on":{"type":"bool","optional":true,"default":false},"app_command_line":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"default_documents":{"type":["list","string"],"optional":true},"dotnet_framework_version":{"type":"string","optional":true,"default":"v4.0"},"ftps_state":{"type":"string","optional":true,"computed":true},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"java_container":{"type":"string","optional":true},"java_container_version":{"type":"string","optional":true},"java_version":{"type":"string","optional":true},"linux_fx_version":{"type":"string","optional":true,"computed":true},"local_mysql_enabled":{"type":"bool","optional":true,"computed":true},"managed_pipeline_mode":{"type":"string","optional":true,"computed":true},"min_tls_version":{"type":"string","optional":true,"computed":true},"number_of_workers":{"type":"number","optional":true,"computed":true},"php_version":{"type":"string","optional":true},"python_version":{"type":"string","optional":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"scm_type":{"type":"string","optional":true,"computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker_process":{"type":"bool","optional":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"computed":true},"websockets_enabled":{"type":"bool","optional":true,"computed":true},"windows_fx_version":{"type":"string","optional":true,"computed":true}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"required":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"source_control":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"manual_integration":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"repo_url":{"type":"string","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"rollback_enabled":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"use_mercurial":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]}}},"optional":true,"computed":true,"conflicts_with":["site_config.0.scm_type"]},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_app_service_active_slot":{"block":{"attributes":{"app_service_name":{"type":"string","required":true},"app_service_slot_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_app_service_certificate":{"block":{"attributes":{"app_service_plan_id":{"type":"string","optional":true},"expiration_date":{"type":"string","computed":true},"friendly_name":{"type":"string","computed":true},"host_names":{"type":["list","string"],"computed":true},"hosting_environment_profile_id":{"type":"string","computed":true},"issue_date":{"type":"string","computed":true},"issuer":{"type":"string","computed":true},"key_vault_id":{"type":"string","optional":true,"required_with":["key_vault_secret_id"]},"key_vault_secret_id":{"type":"string","optional":true,"conflicts_with":["pfx_blob","password"],"exactly_one_of":["key_vault_secret_id","pfx_blob"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"pfx_blob":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"subject_name":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_app_service_certificate_binding":{"block":{"attributes":{"app_service_name":{"type":"string","computed":true},"certificate_id":{"type":"string","required":true},"hostname":{"type":"string","computed":true},"hostname_binding_id":{"type":"string","required":true},"ssl_state":{"type":"string","required":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_app_service_certificate_order":{"block":{"attributes":{"app_service_certificate_not_renewable_reasons":{"type":["list","string"],"computed":true},"auto_renew":{"type":"bool","optional":true,"default":true},"certificates":{"type":["list",["object",{"certificate_name":"string","key_vault_id":"string","key_vault_secret_name":"string","provisioning_state":"string"}]],"computed":true},"csr":{"type":"string","optional":true,"computed":true,"conflicts_with":["distinguished_name"]},"distinguished_name":{"type":"string","optional":true,"computed":true,"conflicts_with":["csr"]},"domain_verification_token":{"type":"string","computed":true},"expiration_time":{"type":"string","computed":true},"intermediate_thumbprint":{"type":"string","computed":true},"is_private_key_external":{"type":"bool","computed":true},"key_size":{"type":"number","optional":true,"default":2048},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"product_type":{"type":"string","optional":true,"default":"Standard"},"resource_group_name":{"type":"string","required":true},"root_thumbprint":{"type":"string","computed":true},"signed_certificate_thumbprint":{"type":"string","computed":true},"status":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"validity_in_years":{"type":"number","optional":true,"default":1}}}},"azurerm_app_service_connection":{"block":{"attributes":{"app_service_id":{"type":"string","required":true},"client_type":{"type":"string","optional":true,"default":"none"},"name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"vnet_solution":{"type":"string","optional":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"client_id":{"type":"string","optional":true},"name":{"type":"string","optional":true},"principal_id":{"type":"string","optional":true},"secret":{"type":"string","optional":true},"subscription_id":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true},"secret_store":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_app_service_custom_hostname_binding":{"block":{"attributes":{"app_service_name":{"type":"string","required":true},"hostname":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssl_state":{"type":"string","optional":true,"computed":true},"thumbprint":{"type":"string","optional":true,"computed":true},"virtual_ip":{"type":"string","computed":true}}}},"azurerm_app_service_environment_v3":{"block":{"attributes":{"allow_new_private_endpoint_connections":{"type":"bool","optional":true,"default":true},"dedicated_host_count":{"type":"number","optional":true,"conflicts_with":["zone_redundant"]},"dns_suffix":{"type":"string","computed":true},"external_inbound_ip_addresses":{"type":["list","string"],"computed":true},"inbound_network_dependencies":{"type":["list",["object",{"description":"string","ip_addresses":["list","string"],"ports":["list","string"]}]],"computed":true},"internal_inbound_ip_addresses":{"type":["list","string"],"computed":true},"internal_load_balancing_mode":{"type":"string","optional":true,"default":"None"},"ip_ssl_address_count":{"type":"number","computed":true},"linux_outbound_ip_addresses":{"type":["list","string"],"computed":true},"location":{"type":"string","computed":true},"name":{"type":"string","required":true},"pricing_tier":{"type":"string","computed":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"windows_outbound_ip_addresses":{"type":["list","string"],"computed":true},"zone_redundant":{"type":"bool","optional":true,"default":false,"conflicts_with":["dedicated_host_count"]}},"block_types":{"cluster_setting":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_app_service_hybrid_connection":{"block":{"attributes":{"app_service_name":{"type":"string","required":true},"hostname":{"type":"string","required":true},"namespace_name":{"type":"string","computed":true},"port":{"type":"number","required":true},"relay_id":{"type":"string","required":true},"relay_name":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"send_key_name":{"type":"string","optional":true,"default":"RootManageSharedAccessKey"},"send_key_value":{"type":"string","computed":true},"service_bus_namespace":{"type":"string","computed":true},"service_bus_suffix":{"type":"string","computed":true}}}},"azurerm_app_service_managed_certificate":{"block":{"attributes":{"canonical_name":{"type":"string","computed":true},"custom_hostname_binding_id":{"type":"string","required":true},"expiration_date":{"type":"string","computed":true},"friendly_name":{"type":"string","computed":true},"host_names":{"type":["list","string"],"computed":true},"issue_date":{"type":"string","computed":true},"issuer":{"type":"string","computed":true},"subject_name":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_app_service_plan":{"block":{"attributes":{"app_service_environment_id":{"type":"string","optional":true},"is_xenon":{"type":"bool","optional":true},"kind":{"type":"string","optional":true,"default":"Windows"},"location":{"type":"string","required":true},"maximum_elastic_worker_count":{"type":"number","optional":true,"computed":true},"maximum_number_of_workers":{"type":"number","computed":true},"name":{"type":"string","required":true},"per_site_scaling":{"type":"bool","optional":true},"reserved":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone_redundant":{"type":"bool","optional":true}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"computed":true},"size":{"type":"string","required":true},"tier":{"type":"string","required":true}}},"required":true}}}},"azurerm_app_service_public_certificate":{"block":{"attributes":{"app_service_name":{"type":"string","required":true},"blob":{"type":"string","required":true},"certificate_location":{"type":"string","required":true},"certificate_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_app_service_slot":{"block":{"attributes":{"app_service_name":{"type":"string","required":true},"app_service_plan_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true,"computed":true},"client_affinity_enabled":{"type":"bool","optional":true,"computed":true},"default_site_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"password":"string","username":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_params":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"default_provider":{"type":"string","optional":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages_enabled":{"type":"bool","optional":true,"default":false},"failed_request_tracing_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","optional":true,"default":"Off"}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"],"at_least_one_of":["logs.0.http_logs.0.azure_blob_storage","logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"],"at_least_one_of":["logs.0.http_logs.0.azure_blob_storage","logs.0.http_logs.0.file_system"]}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"acr_use_managed_identity_credentials":{"type":"bool","optional":true,"default":false},"acr_user_managed_identity_client_id":{"type":"string","optional":true},"always_on":{"type":"bool","optional":true,"default":false},"app_command_line":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"default_documents":{"type":["list","string"],"optional":true},"dotnet_framework_version":{"type":"string","optional":true,"default":"v4.0"},"ftps_state":{"type":"string","optional":true,"computed":true},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"java_container":{"type":"string","optional":true},"java_container_version":{"type":"string","optional":true},"java_version":{"type":"string","optional":true},"linux_fx_version":{"type":"string","optional":true,"computed":true},"local_mysql_enabled":{"type":"bool","optional":true,"computed":true},"managed_pipeline_mode":{"type":"string","optional":true,"computed":true},"min_tls_version":{"type":"string","optional":true,"computed":true},"number_of_workers":{"type":"number","optional":true,"computed":true},"php_version":{"type":"string","optional":true},"python_version":{"type":"string","optional":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"scm_type":{"type":"string","optional":true,"computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker_process":{"type":"bool","optional":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"computed":true},"websockets_enabled":{"type":"bool","optional":true,"computed":true},"windows_fx_version":{"type":"string","optional":true,"computed":true}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"required":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_app_service_slot_custom_hostname_binding":{"block":{"attributes":{"app_service_slot_id":{"type":"string","required":true},"hostname":{"type":"string","required":true},"ssl_state":{"type":"string","optional":true,"computed":true},"thumbprint":{"type":"string","optional":true,"computed":true},"virtual_ip":{"type":"string","computed":true}}}},"azurerm_app_service_slot_virtual_network_swift_connection":{"block":{"attributes":{"app_service_id":{"type":"string","required":true},"slot_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_app_service_source_control":{"block":{"attributes":{"app_id":{"type":"string","required":true},"branch":{"type":"string","optional":true,"computed":true,"required_with":["repo_url"]},"repo_url":{"type":"string","optional":true,"computed":true,"required_with":["branch"]},"rollback_enabled":{"type":"bool","optional":true,"default":false},"scm_type":{"type":"string","computed":true},"use_local_git":{"type":"bool","optional":true,"default":false,"conflicts_with":["repo_url","branch","use_manual_integration","uses_github_action","github_action_configuration","use_mercurial","rollback_enabled"]},"use_manual_integration":{"type":"bool","optional":true,"default":false},"use_mercurial":{"type":"bool","optional":true,"default":false},"uses_github_action":{"type":"bool","computed":true}},"block_types":{"github_action_configuration":{"nesting_mode":3,"block":{"attributes":{"generate_workflow_file":{"type":"bool","optional":true,"default":true},"linux_action":{"type":"bool","computed":true}},"block_types":{"code_configuration":{"nesting_mode":3,"block":{"attributes":{"runtime_stack":{"type":"string","required":true},"runtime_version":{"type":"string","required":true}}},"optional":true},"container_configuration":{"nesting_mode":3,"block":{"attributes":{"image_name":{"type":"string","required":true},"registry_password":{"type":"string","optional":true},"registry_url":{"type":"string","required":true},"registry_username":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_app_service_source_control_slot":{"block":{"attributes":{"branch":{"type":"string","optional":true,"computed":true,"required_with":["repo_url"]},"repo_url":{"type":"string","optional":true,"computed":true,"required_with":["branch"]},"rollback_enabled":{"type":"bool","optional":true,"default":false},"scm_type":{"type":"string","computed":true},"slot_id":{"type":"string","required":true},"use_local_git":{"type":"bool","optional":true,"default":false,"conflicts_with":["repo_url","branch","use_manual_integration","uses_github_action","github_action_configuration","use_mercurial","rollback_enabled"]},"use_manual_integration":{"type":"bool","optional":true,"default":false},"use_mercurial":{"type":"bool","optional":true,"default":false},"uses_github_action":{"type":"bool","computed":true}},"block_types":{"github_action_configuration":{"nesting_mode":3,"block":{"attributes":{"generate_workflow_file":{"type":"bool","optional":true,"default":true},"linux_action":{"type":"bool","computed":true}},"block_types":{"code_configuration":{"nesting_mode":3,"block":{"attributes":{"runtime_stack":{"type":"string","required":true},"runtime_version":{"type":"string","required":true}}},"optional":true},"container_configuration":{"nesting_mode":3,"block":{"attributes":{"image_name":{"type":"string","required":true},"registry_password":{"type":"string","optional":true},"registry_url":{"type":"string","required":true},"registry_username":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_app_service_source_control_token":{"block":{"attributes":{"token":{"type":"string","required":true},"token_secret":{"type":"string","optional":true},"type":{"type":"string","required":true}}}},"azurerm_app_service_virtual_network_swift_connection":{"block":{"attributes":{"app_service_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_application_gateway":{"block":{"attributes":{"enable_http2":{"type":"bool","optional":true},"fips_enabled":{"type":"bool","optional":true},"firewall_policy_id":{"type":"string","optional":true},"force_firewall_policy_association":{"type":"bool","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_endpoint_connection":{"type":["set",["object",{"id":"string","name":"string"}]],"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"authentication_certificate":{"nesting_mode":3,"block":{"attributes":{"data":{"type":"string","required":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true}}},"optional":true},"autoscale_configuration":{"nesting_mode":3,"block":{"attributes":{"max_capacity":{"type":"number","optional":true},"min_capacity":{"type":"number","required":true}}},"optional":true},"backend_address_pool":{"nesting_mode":4,"block":{"attributes":{"fqdns":{"type":["set","string"],"optional":true},"id":{"type":"string","computed":true},"ip_addresses":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true}}},"required":true},"backend_http_settings":{"nesting_mode":4,"block":{"attributes":{"affinity_cookie_name":{"type":"string","optional":true},"cookie_based_affinity":{"type":"string","required":true},"dedicated_backend_connection_enabled":{"type":"bool","optional":true,"default":false},"host_name":{"type":"string","optional":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"path":{"type":"string","optional":true},"pick_host_name_from_backend_address":{"type":"bool","optional":true,"default":false},"port":{"type":"number","required":true},"probe_id":{"type":"string","computed":true},"probe_name":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"request_timeout":{"type":"number","optional":true,"default":30},"trusted_root_certificate_names":{"type":["list","string"],"optional":true}},"block_types":{"authentication_certificate":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true}}},"optional":true},"connection_draining":{"nesting_mode":3,"block":{"attributes":{"drain_timeout_sec":{"type":"number","required":true},"enabled":{"type":"bool","required":true}}},"optional":true}}},"required":true},"custom_error_configuration":{"nesting_mode":3,"block":{"attributes":{"custom_error_page_url":{"type":"string","required":true},"id":{"type":"string","computed":true},"status_code":{"type":"string","required":true}}},"optional":true},"frontend_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"private_ip_address":{"type":"string","optional":true,"computed":true},"private_ip_address_allocation":{"type":"string","optional":true,"default":"Dynamic"},"private_link_configuration_id":{"type":"string","computed":true},"private_link_configuration_name":{"type":"string","optional":true},"public_ip_address_id":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true},"frontend_port":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"port":{"type":"number","required":true}}},"required":true},"gateway_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"required":true},"global":{"nesting_mode":3,"block":{"attributes":{"request_buffering_enabled":{"type":"bool","required":true},"response_buffering_enabled":{"type":"bool","required":true}}},"optional":true},"http_listener":{"nesting_mode":4,"block":{"attributes":{"firewall_policy_id":{"type":"string","optional":true},"frontend_ip_configuration_id":{"type":"string","computed":true},"frontend_ip_configuration_name":{"type":"string","required":true},"frontend_port_id":{"type":"string","computed":true},"frontend_port_name":{"type":"string","required":true},"host_name":{"type":"string","optional":true},"host_names":{"type":["set","string"],"optional":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"require_sni":{"type":"bool","optional":true},"ssl_certificate_id":{"type":"string","computed":true},"ssl_certificate_name":{"type":"string","optional":true},"ssl_profile_id":{"type":"string","computed":true},"ssl_profile_name":{"type":"string","optional":true}},"block_types":{"custom_error_configuration":{"nesting_mode":3,"block":{"attributes":{"custom_error_page_url":{"type":"string","required":true},"id":{"type":"string","computed":true},"status_code":{"type":"string","required":true}}},"optional":true}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"private_link_configuration":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","required":true},"private_ip_address":{"type":"string","optional":true,"computed":true},"private_ip_address_allocation":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"required":true}}},"optional":true},"probe":{"nesting_mode":4,"block":{"attributes":{"host":{"type":"string","optional":true},"id":{"type":"string","computed":true},"interval":{"type":"number","required":true},"minimum_servers":{"type":"number","optional":true,"default":0},"name":{"type":"string","required":true},"path":{"type":"string","required":true},"pick_host_name_from_backend_http_settings":{"type":"bool","optional":true,"default":false},"port":{"type":"number","optional":true},"protocol":{"type":"string","required":true},"timeout":{"type":"number","required":true},"unhealthy_threshold":{"type":"number","required":true}},"block_types":{"match":{"nesting_mode":3,"block":{"attributes":{"body":{"type":"string","optional":true},"status_code":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true},"redirect_configuration":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","computed":true},"include_path":{"type":"bool","optional":true,"default":false},"include_query_string":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"redirect_type":{"type":"string","required":true},"target_listener_id":{"type":"string","computed":true},"target_listener_name":{"type":"string","optional":true},"target_url":{"type":"string","optional":true}}},"optional":true},"request_routing_rule":{"nesting_mode":4,"block":{"attributes":{"backend_address_pool_id":{"type":"string","computed":true},"backend_address_pool_name":{"type":"string","optional":true},"backend_http_settings_id":{"type":"string","computed":true},"backend_http_settings_name":{"type":"string","optional":true},"http_listener_id":{"type":"string","computed":true},"http_listener_name":{"type":"string","required":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true},"redirect_configuration_id":{"type":"string","computed":true},"redirect_configuration_name":{"type":"string","optional":true},"rewrite_rule_set_id":{"type":"string","computed":true},"rewrite_rule_set_name":{"type":"string","optional":true},"rule_type":{"type":"string","required":true},"url_path_map_id":{"type":"string","computed":true},"url_path_map_name":{"type":"string","optional":true}}},"required":true},"rewrite_rule_set":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true}},"block_types":{"rewrite_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"rule_sequence":{"type":"number","required":true}},"block_types":{"condition":{"nesting_mode":3,"block":{"attributes":{"ignore_case":{"type":"bool","optional":true,"default":false},"negate":{"type":"bool","optional":true,"default":false},"pattern":{"type":"string","required":true},"variable":{"type":"string","required":true}}},"optional":true},"request_header_configuration":{"nesting_mode":3,"block":{"attributes":{"header_name":{"type":"string","required":true},"header_value":{"type":"string","required":true}}},"optional":true},"response_header_configuration":{"nesting_mode":3,"block":{"attributes":{"header_name":{"type":"string","required":true},"header_value":{"type":"string","required":true}}},"optional":true},"url":{"nesting_mode":3,"block":{"attributes":{"components":{"type":"string","optional":true},"path":{"type":"string","optional":true},"query_string":{"type":"string","optional":true},"reroute":{"type":"bool","optional":true,"default":false}}},"optional":true}}},"optional":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true},"name":{"type":"string","required":true},"tier":{"type":"string","required":true}}},"required":true},"ssl_certificate":{"nesting_mode":4,"block":{"attributes":{"data":{"type":"string","optional":true},"id":{"type":"string","computed":true},"key_vault_secret_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"public_cert_data":{"type":"string","computed":true}}},"optional":true},"ssl_policy":{"nesting_mode":3,"block":{"attributes":{"cipher_suites":{"type":["list","string"],"optional":true},"disabled_protocols":{"type":["list","string"],"optional":true},"min_protocol_version":{"type":"string","optional":true},"policy_name":{"type":"string","optional":true},"policy_type":{"type":"string","optional":true}}},"optional":true,"computed":true},"ssl_profile":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"trusted_client_certificate_names":{"type":["list","string"],"optional":true},"verify_client_cert_issuer_dn":{"type":"bool","optional":true,"default":false},"verify_client_certificate_revocation":{"type":"string","optional":true}},"block_types":{"ssl_policy":{"nesting_mode":3,"block":{"attributes":{"cipher_suites":{"type":["list","string"],"optional":true},"disabled_protocols":{"type":["list","string"],"optional":true},"min_protocol_version":{"type":"string","optional":true},"policy_name":{"type":"string","optional":true},"policy_type":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"trusted_client_certificate":{"nesting_mode":3,"block":{"attributes":{"data":{"type":"string","required":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true}}},"optional":true},"trusted_root_certificate":{"nesting_mode":3,"block":{"attributes":{"data":{"type":"string","optional":true},"id":{"type":"string","computed":true},"key_vault_secret_id":{"type":"string","optional":true},"name":{"type":"string","required":true}}},"optional":true},"url_path_map":{"nesting_mode":3,"block":{"attributes":{"default_backend_address_pool_id":{"type":"string","computed":true},"default_backend_address_pool_name":{"type":"string","optional":true},"default_backend_http_settings_id":{"type":"string","computed":true},"default_backend_http_settings_name":{"type":"string","optional":true},"default_redirect_configuration_id":{"type":"string","computed":true},"default_redirect_configuration_name":{"type":"string","optional":true},"default_rewrite_rule_set_id":{"type":"string","computed":true},"default_rewrite_rule_set_name":{"type":"string","optional":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true}},"block_types":{"path_rule":{"nesting_mode":3,"block":{"attributes":{"backend_address_pool_id":{"type":"string","computed":true},"backend_address_pool_name":{"type":"string","optional":true},"backend_http_settings_id":{"type":"string","computed":true},"backend_http_settings_name":{"type":"string","optional":true},"firewall_policy_id":{"type":"string","optional":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"paths":{"type":["list","string"],"required":true},"redirect_configuration_id":{"type":"string","computed":true},"redirect_configuration_name":{"type":"string","optional":true},"rewrite_rule_set_id":{"type":"string","computed":true},"rewrite_rule_set_name":{"type":"string","optional":true}}},"required":true}}},"optional":true},"waf_configuration":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"file_upload_limit_mb":{"type":"number","optional":true,"default":100},"firewall_mode":{"type":"string","required":true},"max_request_body_size_kb":{"type":"number","optional":true,"default":128},"request_body_check":{"type":"bool","optional":true,"default":true},"rule_set_type":{"type":"string","optional":true,"default":"OWASP"},"rule_set_version":{"type":"string","required":true}},"block_types":{"disabled_rule_group":{"nesting_mode":3,"block":{"attributes":{"rule_group_name":{"type":"string","required":true},"rules":{"type":["list","number"],"optional":true}}},"optional":true},"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"selector":{"type":"string","optional":true},"selector_match_operator":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_application_insights":{"block":{"attributes":{"app_id":{"type":"string","computed":true},"application_type":{"type":"string","required":true},"connection_string":{"type":"string","computed":true},"daily_data_cap_in_gb":{"type":"number","optional":true,"default":100},"daily_data_cap_notifications_disabled":{"type":"bool","optional":true},"disable_ip_masking":{"type":"bool","optional":true,"default":false},"force_customer_storage_for_profiler":{"type":"bool","optional":true,"default":false},"instrumentation_key":{"type":"string","computed":true},"internet_ingestion_enabled":{"type":"bool","optional":true,"default":true},"internet_query_enabled":{"type":"bool","optional":true,"default":true},"local_authentication_disabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"retention_in_days":{"type":"number","optional":true,"default":90},"sampling_percentage":{"type":"number","optional":true,"default":100},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_application_insights_analytics_item":{"block":{"attributes":{"application_insights_id":{"type":"string","required":true},"content":{"type":"string","required":true},"function_alias":{"type":"string","optional":true},"name":{"type":"string","required":true},"scope":{"type":"string","required":true},"time_created":{"type":"string","computed":true},"time_modified":{"type":"string","computed":true},"type":{"type":"string","required":true},"version":{"type":"string","computed":true}}}},"azurerm_application_insights_api_key":{"block":{"attributes":{"api_key":{"type":"string","computed":true},"application_insights_id":{"type":"string","required":true},"name":{"type":"string","required":true},"read_permissions":{"type":["set","string"],"optional":true},"write_permissions":{"type":["set","string"],"optional":true}}}},"azurerm_application_insights_smart_detection_rule":{"block":{"attributes":{"additional_email_recipients":{"type":["set","string"],"optional":true},"application_insights_id":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"send_emails_to_subscription_owners":{"type":"bool","optional":true,"default":true}}}},"azurerm_application_insights_standard_web_test":{"block":{"attributes":{"application_insights_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true},"frequency":{"type":"number","optional":true,"default":300},"geo_locations":{"type":["list","string"],"required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"retry_enabled":{"type":"bool","optional":true},"synthetic_monitor_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"timeout":{"type":"number","optional":true,"default":30}},"block_types":{"request":{"nesting_mode":3,"block":{"attributes":{"body":{"type":"string","optional":true},"follow_redirects_enabled":{"type":"bool","optional":true,"default":true},"http_verb":{"type":"string","optional":true,"default":"GET"},"parse_dependent_requests_enabled":{"type":"bool","optional":true,"default":true},"url":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"required":true},"validation_rules":{"nesting_mode":3,"block":{"attributes":{"expected_status_code":{"type":"number","optional":true,"default":200},"ssl_cert_remaining_lifetime":{"type":"number","optional":true},"ssl_check_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"content":{"nesting_mode":3,"block":{"attributes":{"content_match":{"type":"string","required":true},"ignore_case":{"type":"bool","optional":true,"default":false},"pass_if_text_found":{"type":"bool","optional":true,"default":false}}},"optional":true}}},"optional":true}}}},"azurerm_application_insights_web_test":{"block":{"attributes":{"application_insights_id":{"type":"string","required":true},"configuration":{"type":"string","required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true},"frequency":{"type":"number","optional":true,"default":300},"geo_locations":{"type":["list","string"],"required":true},"kind":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"retry_enabled":{"type":"bool","optional":true},"synthetic_monitor_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"timeout":{"type":"number","optional":true,"default":30}}}},"azurerm_application_insights_workbook":{"block":{"attributes":{"category":{"type":"string","optional":true,"default":"workbook"},"data_json":{"type":"string","required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_id":{"type":"string","optional":true,"default":"azure monitor"},"storage_container_id":{"type":"string","optional":true,"required_with":["identity"]},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_application_insights_workbook_template":{"block":{"attributes":{"author":{"type":"string","optional":true},"localized":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":0},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"template_data":{"type":"string","required":true}},"block_types":{"galleries":{"nesting_mode":3,"block":{"attributes":{"category":{"type":"string","required":true},"name":{"type":"string","required":true},"order":{"type":"number","optional":true,"default":0},"resource_type":{"type":"string","optional":true,"default":"Azure Monitor"},"type":{"type":"string","optional":true,"default":"workbook"}}},"required":true}}}},"azurerm_application_load_balancer":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_configuration_endpoint":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_application_load_balancer_frontend":{"block":{"attributes":{"application_load_balancer_id":{"type":"string","required":true},"fully_qualified_domain_name":{"type":"string","computed":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_application_load_balancer_security_policy":{"block":{"attributes":{"application_load_balancer_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"web_application_firewall_policy_id":{"type":"string","required":true}}}},"azurerm_application_load_balancer_subnet_association":{"block":{"attributes":{"application_load_balancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_application_security_group":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_arc_kubernetes_cluster":{"block":{"attributes":{"agent_public_key_certificate":{"type":"string","required":true},"agent_version":{"type":"string","computed":true},"distribution":{"type":"string","computed":true},"infrastructure":{"type":"string","computed":true},"kubernetes_version":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"offering":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"total_core_count":{"type":"number","computed":true},"total_node_count":{"type":"number","computed":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_arc_kubernetes_cluster_extension":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"configuration_protected_settings":{"type":["map","string"],"optional":true},"configuration_settings":{"type":["map","string"],"optional":true},"current_version":{"type":"string","computed":true},"extension_type":{"type":"string","required":true},"name":{"type":"string","required":true},"release_namespace":{"type":"string","optional":true,"computed":true,"conflicts_with":["target_namespace"]},"release_train":{"type":"string","optional":true,"computed":true},"target_namespace":{"type":"string","optional":true,"computed":true,"conflicts_with":["release_namespace"]},"version":{"type":"string","optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_arc_kubernetes_flux_configuration":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"continuous_reconciliation_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"namespace":{"type":"string","required":true},"scope":{"type":"string","optional":true,"default":"namespace"}},"block_types":{"blob_storage":{"nesting_mode":3,"block":{"attributes":{"account_key":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"container_id":{"type":"string","required":true},"local_auth_reference":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"sas_token":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600}},"block_types":{"service_principal":{"nesting_mode":3,"block":{"attributes":{"client_certificate_base64":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.service_principal.0.client_certificate_base64","blob_storage.0.service_principal.0.client_secret"]},"client_certificate_password":{"type":"string","optional":true,"required_with":["blob_storage.0.service_principal.0.client_certificate_base64"]},"client_certificate_send_chain":{"type":"bool","optional":true,"default":false},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.service_principal.0.client_certificate_base64","blob_storage.0.service_principal.0.client_secret"]},"tenant_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.sas_token","blob_storage.0.service_principal"]}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"bucket":{"nesting_mode":3,"block":{"attributes":{"access_key":{"type":"string","optional":true,"exactly_one_of":["bucket.0.access_key","bucket.0.local_auth_reference"],"required_with":["bucket.0.secret_key_base64"]},"bucket_name":{"type":"string","required":true},"local_auth_reference":{"type":"string","optional":true,"exactly_one_of":["bucket.0.access_key","bucket.0.local_auth_reference"]},"secret_key_base64":{"type":"string","optional":true,"required_with":["bucket.0.access_key"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600},"tls_enabled":{"type":"bool","optional":true,"default":true},"url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"git_repository":{"nesting_mode":3,"block":{"attributes":{"https_ca_cert_base64":{"type":"string","optional":true,"required_with":["git_repository.0.https_user"]},"https_key_base64":{"type":"string","optional":true,"required_with":["git_repository.0.https_user"]},"https_user":{"type":"string","optional":true,"conflicts_with":["git_repository.0.local_auth_reference","git_repository.0.ssh_private_key_base64","git_repository.0.ssh_known_hosts_base64"],"required_with":["git_repository.0.https_key_base64"]},"local_auth_reference":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.ssh_private_key_base64","git_repository.0.ssh_known_hosts_base64"]},"reference_type":{"type":"string","required":true},"reference_value":{"type":"string","required":true},"ssh_known_hosts_base64":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.local_auth_reference"]},"ssh_private_key_base64":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.local_auth_reference"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600},"url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"kustomizations":{"nesting_mode":4,"block":{"attributes":{"depends_on":{"type":["list","string"],"optional":true},"garbage_collection_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"path":{"type":"string","optional":true},"recreating_enabled":{"type":"bool","optional":true,"default":false},"retry_interval_in_seconds":{"type":"number","optional":true,"default":600},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600}}},"required":true}}}},"azurerm_arc_kubernetes_provisioned_cluster":{"block":{"attributes":{"agent_version":{"type":"string","computed":true},"arc_agent_auto_upgrade_enabled":{"type":"bool","optional":true,"default":true},"arc_agent_desired_version":{"type":"string","optional":true},"distribution":{"type":"string","computed":true},"infrastructure":{"type":"string","computed":true},"kubernetes_version":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"offering":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"total_core_count":{"type":"number","computed":true},"total_node_count":{"type":"number","computed":true}},"block_types":{"azure_active_directory":{"nesting_mode":3,"block":{"attributes":{"admin_group_object_ids":{"type":["list","string"],"optional":true},"azure_rbac_enabled":{"type":"bool","optional":true,"default":false},"tenant_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_arc_machine":{"block":{"attributes":{"kind":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_arc_machine_automanage_configuration_assignment":{"block":{"attributes":{"arc_machine_id":{"type":"string","required":true},"configuration_id":{"type":"string","required":true}}}},"azurerm_arc_machine_extension":{"block":{"attributes":{"arc_machine_id":{"type":"string","required":true},"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":true},"force_update_tag":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","optional":true}}}},"azurerm_arc_private_link_scope":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_arc_resource_bridge_appliance":{"block":{"attributes":{"distro":{"type":"string","required":true},"infrastructure_provider":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_key_base64":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_attestation_provider":{"block":{"attributes":{"attestation_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"open_enclave_policy_base64":{"type":"string","optional":true},"policy_signing_certificate_data":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"sev_snp_policy_base64":{"type":"string","optional":true},"sgx_enclave_policy_base64":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"tpm_policy_base64":{"type":"string","optional":true},"trust_model":{"type":"string","computed":true}}}},"azurerm_automanage_configuration":{"block":{"attributes":{"automation_account_enabled":{"type":"bool","optional":true,"default":false},"boot_diagnostics_enabled":{"type":"bool","optional":true,"default":false},"defender_for_cloud_enabled":{"type":"bool","optional":true,"default":false},"guest_configuration_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"log_analytics_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"status_change_alert_enabled":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true}},"block_types":{"antimalware":{"nesting_mode":3,"block":{"attributes":{"real_time_protection_enabled":{"type":"bool","optional":true,"default":false},"scheduled_scan_day":{"type":"number","optional":true,"default":8},"scheduled_scan_enabled":{"type":"bool","optional":true,"default":false},"scheduled_scan_time_in_minutes":{"type":"number","optional":true,"default":0},"scheduled_scan_type":{"type":"string","optional":true,"default":"Quick"}},"block_types":{"exclusions":{"nesting_mode":3,"block":{"attributes":{"extensions":{"type":"string","optional":true},"paths":{"type":"string","optional":true},"processes":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"azure_security_baseline":{"nesting_mode":3,"block":{"attributes":{"assignment_type":{"type":"string","optional":true,"default":"ApplyAndAutoCorrect"}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"instant_rp_retention_range_in_days":{"type":"number","optional":true,"default":5},"policy_name":{"type":"string","optional":true},"time_zone":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"retention_policy":{"nesting_mode":3,"block":{"attributes":{"retention_policy_type":{"type":"string","optional":true,"default":"LongTermRetentionPolicy"}},"block_types":{"daily_schedule":{"nesting_mode":3,"block":{"attributes":{"retention_times":{"type":["list","string"],"optional":true}},"block_types":{"retention_duration":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","optional":true},"duration_type":{"type":"string","optional":true,"default":"Days"}}},"optional":true}}},"optional":true},"weekly_schedule":{"nesting_mode":3,"block":{"attributes":{"retention_times":{"type":["list","string"],"optional":true}},"block_types":{"retention_duration":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","optional":true},"duration_type":{"type":"string","optional":true,"default":"Weeks"}}},"optional":true}}},"optional":true}}},"optional":true},"schedule_policy":{"nesting_mode":3,"block":{"attributes":{"schedule_policy_type":{"type":"string","optional":true,"default":"SimpleSchedulePolicy"},"schedule_run_days":{"type":["list","string"],"optional":true},"schedule_run_frequency":{"type":"string","optional":true,"default":"Daily"},"schedule_run_times":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_automation_account":{"block":{"attributes":{"dsc_primary_access_key":{"type":"string","computed":true},"dsc_secondary_access_key":{"type":"string","computed":true},"dsc_server_endpoint":{"type":"string","computed":true},"hybrid_service_url":{"type":"string","computed":true},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_endpoint_connection":{"type":["list",["object",{"id":"string","name":"string"}]],"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"key_source":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_automation_certificate":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"base64":{"type":"string","required":true},"description":{"type":"string","optional":true},"exportable":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_automation_connection":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"type":{"type":"string","required":true},"values":{"type":["map","string"],"required":true}}}},"azurerm_automation_connection_certificate":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"automation_certificate_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}}}},"azurerm_automation_connection_classic_certificate":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"certificate_asset_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","required":true},"subscription_name":{"type":"string","required":true}}}},"azurerm_automation_connection_service_principal":{"block":{"attributes":{"application_id":{"type":"string","required":true},"automation_account_name":{"type":"string","required":true},"certificate_thumbprint":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_automation_connection_type":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"is_global":{"type":"bool","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"field":{"nesting_mode":3,"block":{"attributes":{"is_encrypted":{"type":"bool","optional":true},"is_optional":{"type":"bool","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_automation_credential":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"username":{"type":"string","required":true}}}},"azurerm_automation_dsc_configuration":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"content_embedded":{"type":"string","required":true},"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"log_verbose":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"state":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_automation_dsc_nodeconfiguration":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"configuration_name":{"type":"string","computed":true},"content_embedded":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_automation_hybrid_runbook_worker":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"ip":{"type":"string","computed":true},"last_seen_date_time":{"type":"string","computed":true},"registration_date_time":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"vm_resource_id":{"type":"string","required":true},"worker_group_name":{"type":"string","required":true},"worker_id":{"type":"string","required":true},"worker_name":{"type":"string","computed":true},"worker_type":{"type":"string","computed":true}}}},"azurerm_automation_hybrid_runbook_worker_group":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"credential_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_automation_job_schedule":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"job_schedule_id":{"type":"string","optional":true,"computed":true},"parameters":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"run_on":{"type":"string","optional":true},"runbook_name":{"type":"string","required":true},"schedule_name":{"type":"string","required":true}}}},"azurerm_automation_module":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"module_link":{"nesting_mode":3,"block":{"attributes":{"uri":{"type":"string","required":true}},"block_types":{"hash":{"nesting_mode":3,"block":{"attributes":{"algorithm":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_automation_powershell72_module":{"block":{"attributes":{"automation_account_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"module_link":{"nesting_mode":3,"block":{"attributes":{"uri":{"type":"string","required":true}},"block_types":{"hash":{"nesting_mode":3,"block":{"attributes":{"algorithm":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_automation_python3_package":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"content_uri":{"type":"string","required":true},"content_version":{"type":"string","optional":true},"hash_algorithm":{"type":"string","optional":true,"required_with":["hash_value"]},"hash_value":{"type":"string","optional":true,"required_with":["hash_algorithm"]},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_automation_runbook":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"content":{"type":"string","optional":true,"computed":true,"at_least_one_of":["content","publish_content_link","draft"]},"description":{"type":"string","optional":true},"job_schedule":{"type":["set",["object",{"job_schedule_id":"string","parameters":["map","string"],"run_on":"string","schedule_name":"string"}]],"optional":true,"computed":true},"location":{"type":"string","required":true},"log_activity_trace_level":{"type":"number","optional":true},"log_progress":{"type":"bool","required":true},"log_verbose":{"type":"bool","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"runbook_type":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"draft":{"nesting_mode":3,"block":{"attributes":{"creation_time":{"type":"string","computed":true},"edit_mode_enabled":{"type":"bool","optional":true},"last_modified_time":{"type":"string","computed":true},"output_types":{"type":["list","string"],"optional":true}},"block_types":{"content_link":{"nesting_mode":3,"block":{"attributes":{"uri":{"type":"string","required":true},"version":{"type":"string","optional":true}},"block_types":{"hash":{"nesting_mode":3,"block":{"attributes":{"algorithm":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"parameters":{"nesting_mode":3,"block":{"attributes":{"default_value":{"type":"string","optional":true},"key":{"type":"string","required":true},"mandatory":{"type":"bool","optional":true,"default":false},"position":{"type":"number","optional":true},"type":{"type":"string","required":true}}},"optional":true}}},"optional":true},"publish_content_link":{"nesting_mode":3,"block":{"attributes":{"uri":{"type":"string","required":true},"version":{"type":"string","optional":true}},"block_types":{"hash":{"nesting_mode":3,"block":{"attributes":{"algorithm":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true,"at_least_one_of":["content","publish_content_link","draft"]}}}},"azurerm_automation_schedule":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"expiry_time":{"type":"string","optional":true,"computed":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","optional":true,"computed":true},"month_days":{"type":["set","number"],"optional":true,"conflicts_with":["week_days","monthly_occurrence"]},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"start_time":{"type":"string","optional":true,"computed":true},"timezone":{"type":"string","optional":true,"default":"Etc/UTC"},"week_days":{"type":["set","string"],"optional":true,"conflicts_with":["month_days","monthly_occurrence"]}},"block_types":{"monthly_occurrence":{"nesting_mode":3,"block":{"attributes":{"day":{"type":"string","required":true},"occurrence":{"type":"number","required":true}}},"optional":true,"conflicts_with":["week_days","month_days"]}}}},"azurerm_automation_software_update_configuration":{"block":{"attributes":{"automation_account_id":{"type":"string","required":true},"duration":{"type":"string","optional":true,"default":"PT2H"},"error_code":{"type":"string","computed":true},"error_message":{"type":"string","computed":true},"name":{"type":"string","required":true},"non_azure_computer_names":{"type":["list","string"],"optional":true},"virtual_machine_ids":{"type":["list","string"],"optional":true}},"block_types":{"linux":{"nesting_mode":3,"block":{"attributes":{"classifications_included":{"type":["list","string"],"required":true},"excluded_packages":{"type":["list","string"],"optional":true},"included_packages":{"type":["list","string"],"optional":true},"reboot":{"type":"string","optional":true,"default":"IfRequired"}}},"optional":true,"exactly_one_of":["windows","linux"]},"post_task":{"nesting_mode":3,"block":{"attributes":{"parameters":{"type":["map","string"],"optional":true},"source":{"type":"string","optional":true}}},"optional":true},"pre_task":{"nesting_mode":3,"block":{"attributes":{"parameters":{"type":["map","string"],"optional":true},"source":{"type":"string","optional":true}}},"optional":true},"schedule":{"nesting_mode":3,"block":{"attributes":{"advanced_month_days":{"type":["list","number"],"optional":true},"advanced_week_days":{"type":["list","string"],"optional":true},"creation_time":{"type":"string","computed":true},"description":{"type":"string","optional":true},"expiry_time":{"type":"string","optional":true,"computed":true},"expiry_time_offset_minutes":{"type":"number","optional":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","optional":true},"is_enabled":{"type":"bool","optional":true,"default":true},"last_modified_time":{"type":"string","computed":true},"next_run":{"type":"string","optional":true,"computed":true},"next_run_offset_minutes":{"type":"number","optional":true},"start_time":{"type":"string","optional":true,"computed":true},"start_time_offset_minutes":{"type":"number","optional":true},"time_zone":{"type":"string","optional":true,"default":"Etc/UTC"}},"block_types":{"monthly_occurrence":{"nesting_mode":3,"block":{"attributes":{"day":{"type":"string","required":true},"occurrence":{"type":"number","required":true}}},"optional":true}}},"required":true},"target":{"nesting_mode":3,"block":{"block_types":{"azure_query":{"nesting_mode":3,"block":{"attributes":{"locations":{"type":["list","string"],"optional":true},"scope":{"type":["list","string"],"optional":true},"tag_filter":{"type":"string","optional":true}},"block_types":{"tags":{"nesting_mode":3,"block":{"attributes":{"tag":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true},"non_azure_query":{"nesting_mode":3,"block":{"attributes":{"function_alias":{"type":"string","optional":true},"workspace_id":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"windows":{"nesting_mode":3,"block":{"attributes":{"classifications_included":{"type":["list","string"],"required":true},"excluded_knowledge_base_numbers":{"type":["list","string"],"optional":true},"included_knowledge_base_numbers":{"type":["list","string"],"optional":true},"reboot":{"type":"string","optional":true,"default":"IfRequired"}}},"optional":true,"exactly_one_of":["windows","linux"]}}}},"azurerm_automation_source_control":{"block":{"attributes":{"automatic_sync":{"type":"bool","optional":true,"default":false},"automation_account_id":{"type":"string","required":true},"branch":{"type":"string","optional":true},"description":{"type":"string","optional":true},"folder_path":{"type":"string","required":true},"name":{"type":"string","required":true},"publish_runbook_enabled":{"type":"bool","optional":true,"default":true},"repository_url":{"type":"string","required":true},"source_control_type":{"type":"string","required":true}},"block_types":{"security":{"nesting_mode":3,"block":{"attributes":{"refresh_token":{"type":"string","optional":true},"token":{"type":"string","required":true},"token_type":{"type":"string","required":true}}},"required":true}}}},"azurerm_automation_variable_bool":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"bool","optional":true}}}},"azurerm_automation_variable_datetime":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"string","optional":true}}}},"azurerm_automation_variable_int":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"number","optional":true}}}},"azurerm_automation_variable_object":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"string","optional":true}}}},"azurerm_automation_variable_string":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"string","optional":true}}}},"azurerm_automation_watcher":{"block":{"attributes":{"automation_account_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"etag":{"type":"string","optional":true},"execution_frequency_in_seconds":{"type":"number","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"script_name":{"type":"string","required":true},"script_parameters":{"type":["map","string"],"optional":true},"script_run_on":{"type":"string","required":true},"status":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_automation_webhook":{"block":{"attributes":{"automation_account_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"expiry_time":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"run_on_worker_group":{"type":"string","optional":true},"runbook_name":{"type":"string","required":true},"uri":{"type":"string","optional":true,"computed":true}}}},"azurerm_availability_set":{"block":{"attributes":{"location":{"type":"string","required":true},"managed":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"platform_fault_domain_count":{"type":"number","optional":true,"default":3},"platform_update_domain_count":{"type":"number","optional":true,"default":5},"proximity_placement_group_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_backup_container_storage_account":{"block":{"attributes":{"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}}},"azurerm_backup_policy_file_share":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"timezone":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"backup":{"nesting_mode":3,"block":{"attributes":{"frequency":{"type":"string","required":true},"time":{"type":"string","optional":true,"conflicts_with":["backup.0.hourly"],"at_least_one_of":["backup.0.time","backup.0.hourly"]}},"block_types":{"hourly":{"nesting_mode":3,"block":{"attributes":{"interval":{"type":"number","required":true},"start_time":{"type":"string","required":true},"window_duration":{"type":"number","required":true}}},"optional":true,"conflicts_with":["backup.0.time"],"at_least_one_of":["backup.0.time","backup.0.hourly"]}}},"required":true},"retention_daily":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true}}},"required":true},"retention_monthly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"days":{"type":["set","number"],"optional":true,"conflicts_with":["retention_monthly.0.weeks","retention_monthly.0.weekdays"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"]},"include_last_days":{"type":"bool","optional":true,"default":false,"conflicts_with":["retention_monthly.0.weeks","retention_monthly.0.weekdays"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"]},"weekdays":{"type":["set","string"],"optional":true,"conflicts_with":["retention_monthly.0.days","retention_monthly.0.include_last_days"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"],"required_with":["retention_monthly.0.weeks"]},"weeks":{"type":["set","string"],"optional":true,"conflicts_with":["retention_monthly.0.days","retention_monthly.0.include_last_days"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"],"required_with":["retention_monthly.0.weekdays"]}}},"optional":true},"retention_weekly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"weekdays":{"type":["set","string"],"required":true}}},"optional":true},"retention_yearly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"days":{"type":["set","number"],"optional":true,"conflicts_with":["retention_yearly.0.weeks","retention_yearly.0.weekdays"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"]},"include_last_days":{"type":"bool","optional":true,"default":false,"conflicts_with":["retention_yearly.0.weeks","retention_yearly.0.weekdays"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"]},"months":{"type":["set","string"],"required":true},"weekdays":{"type":["set","string"],"optional":true,"conflicts_with":["retention_yearly.0.days","retention_yearly.0.include_last_days"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"],"required_with":["retention_yearly.0.weeks"]},"weeks":{"type":["set","string"],"optional":true,"conflicts_with":["retention_yearly.0.days","retention_yearly.0.include_last_days"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"],"required_with":["retention_yearly.0.weekdays"]}}},"optional":true}}}},"azurerm_backup_policy_vm":{"block":{"attributes":{"instant_restore_retention_days":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"policy_type":{"type":"string","optional":true,"default":"V1"},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"timezone":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"backup":{"nesting_mode":3,"block":{"attributes":{"frequency":{"type":"string","required":true},"hour_duration":{"type":"number","optional":true},"hour_interval":{"type":"number","optional":true},"time":{"type":"string","required":true},"weekdays":{"type":["set","string"],"optional":true}}},"required":true},"instant_restore_resource_group":{"nesting_mode":3,"block":{"attributes":{"prefix":{"type":"string","required":true},"suffix":{"type":"string","optional":true}}},"optional":true},"retention_daily":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true}}},"optional":true},"retention_monthly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"days":{"type":["set","number"],"optional":true,"conflicts_with":["retention_monthly.0.weeks","retention_monthly.0.weekdays"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"]},"include_last_days":{"type":"bool","optional":true,"default":false,"conflicts_with":["retention_monthly.0.weeks","retention_monthly.0.weekdays"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"]},"weekdays":{"type":["set","string"],"optional":true,"conflicts_with":["retention_monthly.0.days","retention_monthly.0.include_last_days"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"],"required_with":["retention_monthly.0.weeks"]},"weeks":{"type":["set","string"],"optional":true,"conflicts_with":["retention_monthly.0.days","retention_monthly.0.include_last_days"],"at_least_one_of":["retention_monthly.0.weekdays","retention_monthly.0.weeks","retention_monthly.0.days","retention_monthly.0.include_last_days"],"required_with":["retention_monthly.0.weekdays"]}}},"optional":true},"retention_weekly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"weekdays":{"type":["set","string"],"required":true}}},"optional":true},"retention_yearly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"days":{"type":["set","number"],"optional":true,"conflicts_with":["retention_yearly.0.weeks","retention_yearly.0.weekdays"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"]},"include_last_days":{"type":"bool","optional":true,"default":false,"conflicts_with":["retention_yearly.0.weeks","retention_yearly.0.weekdays"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"]},"months":{"type":["set","string"],"required":true},"weekdays":{"type":["set","string"],"optional":true,"conflicts_with":["retention_yearly.0.days","retention_yearly.0.include_last_days"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"],"required_with":["retention_yearly.0.weeks"]},"weeks":{"type":["set","string"],"optional":true,"conflicts_with":["retention_yearly.0.days","retention_yearly.0.include_last_days"],"at_least_one_of":["retention_yearly.0.weeks","retention_yearly.0.weekdays","retention_yearly.0.days","retention_yearly.0.include_last_days"],"required_with":["retention_yearly.0.weekdays"]}}},"optional":true},"tiering_policy":{"nesting_mode":3,"block":{"block_types":{"archived_restore_point":{"nesting_mode":3,"block":{"attributes":{"duration":{"type":"number","optional":true},"duration_type":{"type":"string","optional":true},"mode":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_backup_policy_vm_workload":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"workload_type":{"type":"string","required":true}},"block_types":{"protection_policy":{"nesting_mode":4,"block":{"attributes":{"policy_type":{"type":"string","required":true}},"block_types":{"backup":{"nesting_mode":3,"block":{"attributes":{"frequency":{"type":"string","optional":true},"frequency_in_minutes":{"type":"number","optional":true},"time":{"type":"string","optional":true},"weekdays":{"type":["set","string"],"optional":true}}},"required":true},"retention_daily":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true}}},"optional":true},"retention_monthly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"format_type":{"type":"string","required":true},"monthdays":{"type":["set","number"],"optional":true},"weekdays":{"type":["set","string"],"optional":true},"weeks":{"type":["set","string"],"optional":true}}},"optional":true},"retention_weekly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"weekdays":{"type":["set","string"],"required":true}}},"optional":true},"retention_yearly":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"format_type":{"type":"string","required":true},"monthdays":{"type":["set","number"],"optional":true},"months":{"type":["set","string"],"required":true},"weekdays":{"type":["set","string"],"optional":true},"weeks":{"type":["set","string"],"optional":true}}},"optional":true},"simple_retention":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true}}},"optional":true}}},"required":true},"settings":{"nesting_mode":3,"block":{"attributes":{"compression_enabled":{"type":"bool","optional":true,"default":false},"time_zone":{"type":"string","required":true}}},"required":true}}}},"azurerm_backup_protected_file_share":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_file_share_name":{"type":"string","required":true},"source_storage_account_id":{"type":"string","required":true}}}},"azurerm_backup_protected_vm":{"block":{"attributes":{"backup_policy_id":{"type":"string","optional":true},"exclude_disk_luns":{"type":["set","number"],"optional":true,"conflicts_with":["include_disk_luns"]},"include_disk_luns":{"type":["set","number"],"optional":true,"conflicts_with":["exclude_disk_luns"]},"protection_state":{"type":"string","optional":true,"computed":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_vm_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_bastion_host":{"block":{"attributes":{"copy_paste_enabled":{"type":"bool","optional":true,"default":true},"dns_name":{"type":"string","computed":true},"file_copy_enabled":{"type":"bool","optional":true,"default":false},"ip_connect_enabled":{"type":"bool","optional":true,"default":false},"kerberos_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scale_units":{"type":"number","optional":true,"default":2},"session_recording_enabled":{"type":"bool","optional":true,"default":false},"shareable_link_enabled":{"type":"bool","optional":true,"default":false},"sku":{"type":"string","optional":true,"default":"Basic"},"tags":{"type":["map","string"],"optional":true},"tunneling_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_id":{"type":"string","optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"public_ip_address_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_batch_account":{"block":{"attributes":{"account_endpoint":{"type":"string","computed":true},"allowed_authentication_modes":{"type":["set","string"],"optional":true,"computed":true},"encryption":{"type":["list",["object",{"key_vault_key_id":"string"}]],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"pool_allocation_mode":{"type":"string","optional":true,"default":"BatchService"},"primary_access_key":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"storage_account_authentication_mode":{"type":"string","optional":true,"required_with":["storage_account_id"]},"storage_account_id":{"type":"string","optional":true,"required_with":["storage_account_authentication_mode"]},"storage_account_node_identity":{"type":"string","optional":true,"required_with":["storage_account_id"]},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"key_vault_reference":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","required":true},"url":{"type":"string","required":true}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"block_types":{"account_access":{"nesting_mode":3,"block":{"attributes":{"default_action":{"type":"string","optional":true,"default":"Deny"}},"block_types":{"ip_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"ip_range":{"type":"string","required":true}}},"optional":true}}},"optional":true,"at_least_one_of":["network_profile.0.account_access","network_profile.0.node_management_access"]},"node_management_access":{"nesting_mode":3,"block":{"attributes":{"default_action":{"type":"string","optional":true,"default":"Deny"}},"block_types":{"ip_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"ip_range":{"type":"string","required":true}}},"optional":true}}},"optional":true,"at_least_one_of":["network_profile.0.account_access","network_profile.0.node_management_access"]}}},"optional":true}}}},"azurerm_batch_application":{"block":{"attributes":{"account_name":{"type":"string","required":true},"allow_updates":{"type":"bool","optional":true,"default":true},"default_version":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_batch_certificate":{"block":{"attributes":{"account_name":{"type":"string","required":true},"certificate":{"type":"string","required":true},"format":{"type":"string","required":true},"name":{"type":"string","computed":true},"password":{"type":"string","optional":true},"public_data":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"thumbprint":{"type":"string","required":true},"thumbprint_algorithm":{"type":"string","required":true}}}},"azurerm_batch_job":{"block":{"attributes":{"batch_pool_id":{"type":"string","required":true},"common_environment_properties":{"type":["map","string"],"optional":true},"display_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":0},"task_retry_maximum":{"type":"number","optional":true}}}},"azurerm_batch_pool":{"block":{"attributes":{"account_name":{"type":"string","required":true},"display_name":{"type":"string","optional":true},"inter_node_communication":{"type":"string","optional":true,"default":"Enabled"},"license_type":{"type":"string","optional":true},"max_tasks_per_node":{"type":"number","optional":true,"default":1},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"node_agent_sku_id":{"type":"string","required":true},"os_disk_placement":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"stop_pending_resize_operation":{"type":"bool","optional":true,"default":false},"target_node_communication_mode":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"auto_scale":{"nesting_mode":3,"block":{"attributes":{"evaluation_interval":{"type":"string","optional":true,"default":"PT15M"},"formula":{"type":"string","required":true}}},"optional":true},"certificate":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","required":true},"store_location":{"type":"string","required":true},"store_name":{"type":"string","optional":true},"visibility":{"type":["set","string"],"optional":true}}},"optional":true},"container_configuration":{"nesting_mode":3,"block":{"attributes":{"container_image_names":{"type":["set","string"],"optional":true,"at_least_one_of":["container_configuration.0.type","container_configuration.0.container_image_names","container_configuration.0.container_registries"]},"container_registries":{"type":["list",["object",{"password":"string","registry_server":"string","user_assigned_identity_id":"string","user_name":"string"}]],"optional":true,"at_least_one_of":["container_configuration.0.type","container_configuration.0.container_image_names","container_configuration.0.container_registries"]},"type":{"type":"string","optional":true,"at_least_one_of":["container_configuration.0.type","container_configuration.0.container_image_names","container_configuration.0.container_registries"]}}},"optional":true},"data_disks":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","optional":true,"default":"ReadOnly"},"disk_size_gb":{"type":"number","required":true},"lun":{"type":"number","required":true},"storage_account_type":{"type":"string","optional":true,"default":"Standard_LRS"}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"disk_encryption_target":{"type":"string","required":true}}},"optional":true},"extensions":{"nesting_mode":3,"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true},"automatic_upgrade_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"provision_after_extensions":{"type":["set","string"],"optional":true},"publisher":{"type":"string","required":true},"settings_json":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","optional":true}}},"optional":true},"fixed_scale":{"nesting_mode":3,"block":{"attributes":{"node_deallocation_method":{"type":"string","optional":true},"resize_timeout":{"type":"string","optional":true,"default":"PT15M"},"target_dedicated_nodes":{"type":"number","optional":true,"default":1},"target_low_priority_nodes":{"type":"number","optional":true,"default":0}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"mount":{"nesting_mode":3,"block":{"block_types":{"azure_blob_file_system":{"nesting_mode":3,"block":{"attributes":{"account_key":{"type":"string","optional":true},"account_name":{"type":"string","required":true},"blobfuse_options":{"type":"string","optional":true},"container_name":{"type":"string","required":true},"identity_id":{"type":"string","optional":true},"relative_mount_path":{"type":"string","required":true},"sas_key":{"type":"string","optional":true}}},"optional":true},"azure_file_share":{"nesting_mode":3,"block":{"attributes":{"account_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"azure_file_url":{"type":"string","required":true},"mount_options":{"type":"string","optional":true},"relative_mount_path":{"type":"string","required":true}}},"optional":true},"cifs_mount":{"nesting_mode":3,"block":{"attributes":{"mount_options":{"type":"string","optional":true},"password":{"type":"string","required":true},"relative_mount_path":{"type":"string","required":true},"source":{"type":"string","required":true},"user_name":{"type":"string","required":true}}},"optional":true},"nfs_mount":{"nesting_mode":3,"block":{"attributes":{"mount_options":{"type":"string","optional":true},"relative_mount_path":{"type":"string","required":true},"source":{"type":"string","required":true}}},"optional":true}}},"optional":true},"network_configuration":{"nesting_mode":3,"block":{"attributes":{"accelerated_networking_enabled":{"type":"bool","optional":true,"default":false},"dynamic_vnet_assignment_scope":{"type":"string","optional":true,"default":"none"},"public_address_provisioning_type":{"type":"string","optional":true},"public_ips":{"type":["set","string"],"optional":true},"subnet_id":{"type":"string","optional":true}},"block_types":{"endpoint_configuration":{"nesting_mode":3,"block":{"attributes":{"backend_port":{"type":"number","required":true},"frontend_port_range":{"type":"string","required":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true}},"block_types":{"network_security_group_rules":{"nesting_mode":3,"block":{"attributes":{"access":{"type":"string","required":true},"priority":{"type":"number","required":true},"source_address_prefix":{"type":"string","required":true},"source_port_ranges":{"type":["list","string"],"optional":true,"computed":true}}},"optional":true}}},"optional":true}}},"optional":true},"node_placement":{"nesting_mode":3,"block":{"attributes":{"policy":{"type":"string","optional":true,"default":"Regional"}}},"optional":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"host_encryption_enabled":{"type":"bool","optional":true},"secure_boot_enabled":{"type":"bool","optional":true,"required_with":["security_profile.0.security_type"]},"security_type":{"type":"string","optional":true},"vtpm_enabled":{"type":"bool","optional":true,"required_with":["security_profile.0.security_type"]}}},"optional":true},"start_task":{"nesting_mode":3,"block":{"attributes":{"command_line":{"type":"string","required":true},"common_environment_properties":{"type":["map","string"],"optional":true},"task_retry_maximum":{"type":"number","optional":true},"wait_for_success":{"type":"bool","optional":true,"default":false}},"block_types":{"container":{"nesting_mode":3,"block":{"attributes":{"image_name":{"type":"string","required":true},"run_options":{"type":"string","optional":true},"working_directory":{"type":"string","optional":true}},"block_types":{"registry":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"registry_server":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true},"user_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"resource_file":{"nesting_mode":3,"block":{"attributes":{"auto_storage_container_name":{"type":"string","optional":true},"blob_prefix":{"type":"string","optional":true},"file_mode":{"type":"string","optional":true},"file_path":{"type":"string","optional":true},"http_url":{"type":"string","optional":true},"storage_container_url":{"type":"string","optional":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"user_identity":{"nesting_mode":3,"block":{"attributes":{"user_name":{"type":"string","optional":true,"at_least_one_of":["start_task.0.user_identity.0.user_name","start_task.0.user_identity.0.auto_user"]}},"block_types":{"auto_user":{"nesting_mode":3,"block":{"attributes":{"elevation_level":{"type":"string","optional":true,"default":"NonAdmin"},"scope":{"type":"string","optional":true,"default":"Task"}}},"optional":true,"at_least_one_of":["start_task.0.user_identity.0.user_name","start_task.0.user_identity.0.auto_user"]}}},"required":true}}},"optional":true},"storage_image_reference":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","optional":true,"at_least_one_of":["storage_image_reference.0.id","storage_image_reference.0.publisher","storage_image_reference.0.offer","storage_image_reference.0.sku","storage_image_reference.0.version"]},"offer":{"type":"string","optional":true,"at_least_one_of":["storage_image_reference.0.id","storage_image_reference.0.publisher","storage_image_reference.0.offer","storage_image_reference.0.sku","storage_image_reference.0.version"]},"publisher":{"type":"string","optional":true,"at_least_one_of":["storage_image_reference.0.id","storage_image_reference.0.publisher","storage_image_reference.0.offer","storage_image_reference.0.sku","storage_image_reference.0.version"]},"sku":{"type":"string","optional":true,"at_least_one_of":["storage_image_reference.0.id","storage_image_reference.0.publisher","storage_image_reference.0.offer","storage_image_reference.0.sku","storage_image_reference.0.version"]},"version":{"type":"string","optional":true,"at_least_one_of":["storage_image_reference.0.id","storage_image_reference.0.publisher","storage_image_reference.0.offer","storage_image_reference.0.sku","storage_image_reference.0.version"]}}},"required":true},"task_scheduling_policy":{"nesting_mode":3,"block":{"attributes":{"node_fill_type":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"user_accounts":{"nesting_mode":3,"block":{"attributes":{"elevation_level":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true}},"block_types":{"linux_user_configuration":{"nesting_mode":3,"block":{"attributes":{"gid":{"type":"number","optional":true},"ssh_private_key":{"type":"string","optional":true},"uid":{"type":"number","optional":true}}},"optional":true},"windows_user_configuration":{"nesting_mode":3,"block":{"attributes":{"login_mode":{"type":"string","required":true}}},"optional":true}}},"optional":true},"windows":{"nesting_mode":3,"block":{"attributes":{"enable_automatic_updates":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_billing_account_cost_management_export":{"block":{"attributes":{"active":{"type":"bool","optional":true,"default":true},"billing_account_id":{"type":"string","required":true},"file_format":{"type":"string","optional":true,"default":"Csv"},"name":{"type":"string","required":true},"recurrence_period_end_date":{"type":"string","required":true},"recurrence_period_start_date":{"type":"string","required":true},"recurrence_type":{"type":"string","required":true}},"block_types":{"export_data_options":{"nesting_mode":3,"block":{"attributes":{"time_frame":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true},"export_data_storage_location":{"nesting_mode":3,"block":{"attributes":{"container_id":{"type":"string","required":true},"root_folder_path":{"type":"string","required":true}}},"required":true}}}},"azurerm_blueprint_assignment":{"block":{"attributes":{"blueprint_name":{"type":"string","computed":true},"description":{"type":"string","computed":true},"display_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"lock_exclude_actions":{"type":["list","string"],"optional":true},"lock_exclude_principals":{"type":["list","string"],"optional":true},"lock_mode":{"type":"string","optional":true,"default":"None"},"name":{"type":"string","required":true},"parameter_values":{"type":"string","optional":true},"resource_groups":{"type":"string","optional":true},"target_subscription_id":{"type":"string","required":true},"type":{"type":"string","computed":true},"version_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_bot_channel_alexa":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"skill_id":{"type":"string","required":true}}}},"azurerm_bot_channel_direct_line_speech":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"cognitive_account_id":{"type":"string","optional":true},"cognitive_service_access_key":{"type":"string","required":true},"cognitive_service_location":{"type":"string","required":true},"custom_speech_model_id":{"type":"string","optional":true},"custom_voice_deployment_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_bot_channel_directline":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"site":{"nesting_mode":4,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"endpoint_parameters_enabled":{"type":"bool","optional":true},"enhanced_authentication_enabled":{"type":"bool","optional":true,"default":false},"id":{"type":"string","computed":true},"key":{"type":"string","computed":true},"key2":{"type":"string","computed":true},"name":{"type":"string","required":true},"storage_enabled":{"type":"bool","optional":true,"default":true},"trusted_origins":{"type":["set","string"],"optional":true},"user_upload_enabled":{"type":"bool","optional":true,"default":true},"v1_allowed":{"type":"bool","optional":true,"default":true},"v3_allowed":{"type":"bool","optional":true,"default":true}}},"required":true}}}},"azurerm_bot_channel_email":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"email_address":{"type":"string","required":true},"email_password":{"type":"string","optional":true,"exactly_one_of":["email_password","magic_code"]},"location":{"type":"string","required":true},"magic_code":{"type":"string","optional":true,"exactly_one_of":["email_password","magic_code"]},"resource_group_name":{"type":"string","required":true}}}},"azurerm_bot_channel_facebook":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"facebook_application_id":{"type":"string","required":true},"facebook_application_secret":{"type":"string","required":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"page":{"nesting_mode":4,"block":{"attributes":{"access_token":{"type":"string","required":true},"id":{"type":"string","required":true}}},"required":true}}}},"azurerm_bot_channel_line":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"line_channel":{"nesting_mode":4,"block":{"attributes":{"access_token":{"type":"string","required":true},"secret":{"type":"string","required":true}}},"required":true}}}},"azurerm_bot_channel_ms_teams":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"calling_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["enable_calling"]},"calling_web_hook":{"type":"string","optional":true,"computed":true},"deployment_environment":{"type":"string","optional":true,"default":"CommercialDeployment"},"enable_calling":{"type":"bool","optional":true,"computed":true,"conflicts_with":["calling_enabled"]},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_bot_channel_slack":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"landing_page_url":{"type":"string","optional":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"signing_secret":{"type":"string","optional":true},"verification_token":{"type":"string","required":true}}}},"azurerm_bot_channel_sms":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"location":{"type":"string","required":true},"phone_number":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sms_channel_account_security_id":{"type":"string","required":true},"sms_channel_auth_token":{"type":"string","required":true}}}},"azurerm_bot_channel_web_chat":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"site":{"nesting_mode":4,"block":{"attributes":{"endpoint_parameters_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"storage_enabled":{"type":"bool","optional":true,"default":true},"user_upload_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_bot_channels_registration":{"block":{"attributes":{"cmk_key_vault_url":{"type":"string","optional":true},"description":{"type":"string","optional":true},"developer_app_insights_api_key":{"type":"string","optional":true},"developer_app_insights_application_id":{"type":"string","optional":true},"developer_app_insights_key":{"type":"string","optional":true},"display_name":{"type":"string","optional":true,"computed":true},"endpoint":{"type":"string","optional":true},"icon_url":{"type":"string","optional":true,"default":"https://docs.botframework.com/static/devportal/client/images/bot-framework-default.png"},"location":{"type":"string","required":true},"microsoft_app_id":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"streaming_endpoint_enabled":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_bot_connection":{"block":{"attributes":{"bot_name":{"type":"string","required":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":"string","optional":true},"service_provider_name":{"type":"string","required":true}}}},"azurerm_bot_service_azure_bot":{"block":{"attributes":{"cmk_key_vault_key_url":{"type":"string","optional":true},"developer_app_insights_api_key":{"type":"string","optional":true},"developer_app_insights_application_id":{"type":"string","optional":true},"developer_app_insights_key":{"type":"string","optional":true},"display_name":{"type":"string","optional":true,"computed":true},"endpoint":{"type":"string","optional":true},"icon_url":{"type":"string","optional":true,"default":"https://docs.botframework.com/static/devportal/client/images/bot-framework-default.png"},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"luis_app_ids":{"type":["list","string"],"optional":true},"luis_key":{"type":"string","optional":true},"microsoft_app_id":{"type":"string","required":true},"microsoft_app_msi_id":{"type":"string","optional":true},"microsoft_app_tenant_id":{"type":"string","optional":true},"microsoft_app_type":{"type":"string","optional":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"streaming_endpoint_enabled":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_bot_web_app":{"block":{"attributes":{"developer_app_insights_api_key":{"type":"string","optional":true},"developer_app_insights_application_id":{"type":"string","optional":true},"developer_app_insights_key":{"type":"string","optional":true},"display_name":{"type":"string","optional":true,"computed":true},"endpoint":{"type":"string","optional":true},"location":{"type":"string","required":true},"luis_app_ids":{"type":["list","string"],"optional":true},"luis_key":{"type":"string","optional":true},"microsoft_app_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_capacity_reservation":{"block":{"attributes":{"capacity_reservation_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone":{"type":"string","optional":true}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_capacity_reservation_group":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_cdn_endpoint":{"block":{"attributes":{"content_types_to_compress":{"type":["set","string"],"optional":true},"fqdn":{"type":"string","computed":true},"is_compression_enabled":{"type":"bool","optional":true},"is_http_allowed":{"type":"bool","optional":true,"default":true},"is_https_allowed":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"optimization_type":{"type":"string","optional":true},"origin_host_header":{"type":"string","optional":true},"origin_path":{"type":"string","optional":true},"probe_path":{"type":"string","optional":true},"profile_name":{"type":"string","required":true},"querystring_caching_behaviour":{"type":"string","optional":true,"default":"IgnoreQueryString"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"delivery_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"order":{"type":"number","required":true}},"block_types":{"cache_expiration_action":{"nesting_mode":3,"block":{"attributes":{"behavior":{"type":"string","required":true},"duration":{"type":"string","optional":true}}},"optional":true},"cache_key_query_string_action":{"nesting_mode":3,"block":{"attributes":{"behavior":{"type":"string","required":true},"parameters":{"type":"string","optional":true}}},"optional":true},"cookies_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"device_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"http_version_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"modify_request_header_action":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"modify_response_header_action":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"post_arg_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"query_string_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"remote_address_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true}}},"optional":true},"request_body_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"request_header_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"request_method_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"request_scheme_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"request_uri_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"url_file_extension_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"url_file_name_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"url_path_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true},"url_redirect_action":{"nesting_mode":3,"block":{"attributes":{"fragment":{"type":"string","optional":true},"hostname":{"type":"string","optional":true},"path":{"type":"string","optional":true},"protocol":{"type":"string","optional":true,"default":"MatchRequest"},"query_string":{"type":"string","optional":true},"redirect_type":{"type":"string","required":true}}},"optional":true},"url_rewrite_action":{"nesting_mode":3,"block":{"attributes":{"destination":{"type":"string","required":true},"preserve_unmatched_path":{"type":"bool","optional":true,"default":true},"source_pattern":{"type":"string","required":true}}},"optional":true}}},"optional":true},"geo_filter":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"country_codes":{"type":["list","string"],"required":true},"relative_path":{"type":"string","required":true}}},"optional":true},"global_delivery_rule":{"nesting_mode":3,"block":{"block_types":{"cache_expiration_action":{"nesting_mode":3,"block":{"attributes":{"behavior":{"type":"string","required":true},"duration":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]},"cache_key_query_string_action":{"nesting_mode":3,"block":{"attributes":{"behavior":{"type":"string","required":true},"parameters":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]},"modify_request_header_action":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]},"modify_response_header_action":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]},"url_redirect_action":{"nesting_mode":3,"block":{"attributes":{"fragment":{"type":"string","optional":true},"hostname":{"type":"string","optional":true},"path":{"type":"string","optional":true},"protocol":{"type":"string","optional":true,"default":"MatchRequest"},"query_string":{"type":"string","optional":true},"redirect_type":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]},"url_rewrite_action":{"nesting_mode":3,"block":{"attributes":{"destination":{"type":"string","required":true},"preserve_unmatched_path":{"type":"bool","optional":true,"default":true},"source_pattern":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["global_delivery_rule.0.cache_expiration_action","global_delivery_rule.0.cache_key_query_string_action","global_delivery_rule.0.modify_request_header_action","global_delivery_rule.0.modify_response_header_action","global_delivery_rule.0.url_redirect_action","global_delivery_rule.0.url_rewrite_action"]}}},"optional":true},"origin":{"nesting_mode":4,"block":{"attributes":{"host_name":{"type":"string","required":true},"http_port":{"type":"number","optional":true,"default":80},"https_port":{"type":"number","optional":true,"default":443},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_cdn_endpoint_custom_domain":{"block":{"attributes":{"cdn_endpoint_id":{"type":"string","required":true},"host_name":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"cdn_managed_https":{"nesting_mode":3,"block":{"attributes":{"certificate_type":{"type":"string","required":true},"protocol_type":{"type":"string","required":true},"tls_version":{"type":"string","optional":true,"default":"TLS12"}}},"optional":true,"conflicts_with":["user_managed_https"]},"user_managed_https":{"nesting_mode":3,"block":{"attributes":{"key_vault_secret_id":{"type":"string","required":true},"tls_version":{"type":"string","optional":true,"default":"TLS12"}}},"optional":true,"conflicts_with":["cdn_managed_https"]}}}},"azurerm_cdn_frontdoor_custom_domain":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"dns_zone_id":{"type":"string","optional":true},"expiration_date":{"type":"string","computed":true},"host_name":{"type":"string","required":true},"name":{"type":"string","required":true},"validation_token":{"type":"string","computed":true}},"block_types":{"tls":{"nesting_mode":3,"block":{"attributes":{"cdn_frontdoor_secret_id":{"type":"string","optional":true,"computed":true},"certificate_type":{"type":"string","optional":true,"default":"ManagedCertificate"},"minimum_tls_version":{"type":"string","optional":true,"default":"TLS12"}}},"required":true}}}},"azurerm_cdn_frontdoor_custom_domain_association":{"block":{"attributes":{"cdn_frontdoor_custom_domain_id":{"type":"string","required":true},"cdn_frontdoor_route_ids":{"type":["list","string"],"required":true}}}},"azurerm_cdn_frontdoor_endpoint":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"host_name":{"type":"string","computed":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_cdn_frontdoor_firewall_policy":{"block":{"attributes":{"captcha_cookie_expiration_in_minutes":{"type":"number","optional":true,"computed":true},"custom_block_response_body":{"type":"string","optional":true},"custom_block_response_status_code":{"type":"number","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"frontend_endpoint_ids":{"type":["list","string"],"computed":true},"js_challenge_cookie_expiration_in_minutes":{"type":"number","optional":true,"computed":true},"mode":{"type":"string","required":true},"name":{"type":"string","required":true},"redirect_url":{"type":"string","optional":true},"request_body_check_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"custom_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":1},"rate_limit_duration_in_minutes":{"type":"number","optional":true,"default":1},"rate_limit_threshold":{"type":"number","optional":true,"default":10},"type":{"type":"string","required":true}},"block_types":{"match_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"required":true},"match_variable":{"type":"string","required":true},"negation_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","optional":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"log_scrubbing":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"scrubbing_rule":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"match_variable":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"Equals"},"selector":{"type":"string","optional":true}}},"required":true}}},"optional":true},"managed_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"type":{"type":"string","required":true},"version":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true},"override":{"nesting_mode":3,"block":{"attributes":{"rule_group_name":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true},"rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":false},"rule_id":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_cdn_frontdoor_origin":{"block":{"attributes":{"cdn_frontdoor_origin_group_id":{"type":"string","required":true},"certificate_name_check_enabled":{"type":"bool","required":true},"enabled":{"type":"bool","optional":true,"default":true},"host_name":{"type":"string","required":true},"http_port":{"type":"number","optional":true,"default":80},"https_port":{"type":"number","optional":true,"default":443},"name":{"type":"string","required":true},"origin_host_header":{"type":"string","optional":true},"priority":{"type":"number","optional":true,"default":1},"weight":{"type":"number","optional":true,"default":500}},"block_types":{"private_link":{"nesting_mode":3,"block":{"attributes":{"location":{"type":"string","required":true},"private_link_target_id":{"type":"string","required":true},"request_message":{"type":"string","optional":true,"default":"Access request for CDN FrontDoor Private Link Origin"},"target_type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_cdn_frontdoor_origin_group":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"name":{"type":"string","required":true},"restore_traffic_time_to_healed_or_new_endpoint_in_minutes":{"type":"number","optional":true,"default":10},"session_affinity_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"health_probe":{"nesting_mode":3,"block":{"attributes":{"interval_in_seconds":{"type":"number","required":true},"path":{"type":"string","optional":true,"default":"/"},"protocol":{"type":"string","required":true},"request_type":{"type":"string","optional":true,"default":"HEAD"}}},"optional":true},"load_balancing":{"nesting_mode":3,"block":{"attributes":{"additional_latency_in_milliseconds":{"type":"number","optional":true,"default":50},"sample_size":{"type":"number","optional":true,"default":4},"successful_samples_required":{"type":"number","optional":true,"default":3}}},"required":true}}}},"azurerm_cdn_frontdoor_profile":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_guid":{"type":"string","computed":true},"response_timeout_seconds":{"type":"number","optional":true,"default":120},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"log_scrubbing_rule":{"nesting_mode":4,"block":{"attributes":{"match_variable":{"type":"string","required":true}}},"optional":true}}}},"azurerm_cdn_frontdoor_route":{"block":{"attributes":{"cdn_frontdoor_custom_domain_ids":{"type":["set","string"],"optional":true},"cdn_frontdoor_endpoint_id":{"type":"string","required":true},"cdn_frontdoor_origin_group_id":{"type":"string","required":true},"cdn_frontdoor_origin_ids":{"type":["list","string"],"required":true},"cdn_frontdoor_origin_path":{"type":"string","optional":true},"cdn_frontdoor_rule_set_ids":{"type":["set","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"forwarding_protocol":{"type":"string","optional":true,"default":"MatchRequest"},"https_redirect_enabled":{"type":"bool","optional":true,"default":true},"link_to_default_domain":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"patterns_to_match":{"type":["list","string"],"required":true},"supported_protocols":{"type":["set","string"],"required":true}},"block_types":{"cache":{"nesting_mode":3,"block":{"attributes":{"compression_enabled":{"type":"bool","optional":true,"default":false},"content_types_to_compress":{"type":["list","string"],"optional":true},"query_string_caching_behavior":{"type":"string","optional":true,"default":"IgnoreQueryString"},"query_strings":{"type":["list","string"],"optional":true}}},"optional":true}}}},"azurerm_cdn_frontdoor_rule":{"block":{"attributes":{"behavior_on_match":{"type":"string","optional":true,"default":"Continue"},"cdn_frontdoor_rule_set_id":{"type":"string","required":true},"cdn_frontdoor_rule_set_name":{"type":"string","computed":true},"name":{"type":"string","required":true},"order":{"type":"number","required":true}},"block_types":{"actions":{"nesting_mode":3,"block":{"block_types":{"request_header_action":{"nesting_mode":3,"block":{"attributes":{"header_action":{"type":"string","required":true},"header_name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"response_header_action":{"nesting_mode":3,"block":{"attributes":{"header_action":{"type":"string","required":true},"header_name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"route_configuration_override_action":{"nesting_mode":3,"block":{"attributes":{"cache_behavior":{"type":"string","optional":true},"cache_duration":{"type":"string","optional":true},"cdn_frontdoor_origin_group_id":{"type":"string","optional":true},"compression_enabled":{"type":"bool","optional":true},"forwarding_protocol":{"type":"string","optional":true},"query_string_caching_behavior":{"type":"string","optional":true},"query_string_parameters":{"type":["list","string"],"optional":true}}},"optional":true},"url_redirect_action":{"nesting_mode":3,"block":{"attributes":{"destination_fragment":{"type":"string","optional":true,"default":""},"destination_hostname":{"type":"string","required":true},"destination_path":{"type":"string","optional":true,"default":""},"query_string":{"type":"string","optional":true,"default":""},"redirect_protocol":{"type":"string","optional":true,"default":"MatchRequest"},"redirect_type":{"type":"string","required":true}}},"optional":true},"url_rewrite_action":{"nesting_mode":3,"block":{"attributes":{"destination":{"type":"string","required":true},"preserve_unmatched_path":{"type":"bool","optional":true,"default":false},"source_pattern":{"type":"string","required":true}}},"optional":true}}},"required":true},"conditions":{"nesting_mode":3,"block":{"block_types":{"client_port_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true}}},"optional":true},"cookies_condition":{"nesting_mode":3,"block":{"attributes":{"cookie_name":{"type":"string","required":true},"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"host_name_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"http_version_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"is_device_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"post_args_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"post_args_name":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"query_string_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"remote_address_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"IPMatch"}}},"optional":true},"request_body_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"request_header_condition":{"nesting_mode":3,"block":{"attributes":{"header_name":{"type":"string","required":true},"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"request_method_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"request_scheme_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"request_uri_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"server_port_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true}}},"optional":true},"socket_address_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"IPMatch"}}},"optional":true},"ssl_protocol_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["set","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","optional":true,"default":"Equal"}}},"optional":true},"url_file_extension_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"required":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"url_filename_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true},"url_path_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_cdn_frontdoor_rule_set":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_cdn_frontdoor_secret":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"cdn_frontdoor_profile_name":{"type":"string","computed":true},"name":{"type":"string","required":true}},"block_types":{"secret":{"nesting_mode":3,"block":{"block_types":{"customer_certificate":{"nesting_mode":3,"block":{"attributes":{"key_vault_certificate_id":{"type":"string","required":true},"subject_alternative_names":{"type":["list","string"],"computed":true}}},"required":true}}},"required":true}}}},"azurerm_cdn_frontdoor_security_policy":{"block":{"attributes":{"cdn_frontdoor_profile_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"security_policies":{"nesting_mode":3,"block":{"block_types":{"firewall":{"nesting_mode":3,"block":{"attributes":{"cdn_frontdoor_firewall_policy_id":{"type":"string","required":true}},"block_types":{"association":{"nesting_mode":3,"block":{"attributes":{"patterns_to_match":{"type":["list","string"],"required":true}},"block_types":{"domain":{"nesting_mode":3,"block":{"attributes":{"active":{"type":"bool","computed":true},"cdn_frontdoor_domain_id":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true}}},"required":true}}}},"azurerm_cdn_profile":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_chaos_studio_capability":{"block":{"attributes":{"capability_type":{"type":"string","required":true},"chaos_studio_target_id":{"type":"string","required":true},"urn":{"type":"string","computed":true}}}},"azurerm_chaos_studio_experiment":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"selectors":{"nesting_mode":3,"block":{"attributes":{"chaos_studio_target_ids":{"type":["list","string"],"required":true},"name":{"type":"string","required":true}}},"required":true},"steps":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"branch":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"actions":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true},"duration":{"type":"string","optional":true},"parameters":{"type":["map","string"],"optional":true},"selector_name":{"type":"string","optional":true},"urn":{"type":"string","optional":true}}},"required":true}}},"required":true}}},"required":true}}}},"azurerm_chaos_studio_target":{"block":{"attributes":{"location":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"target_type":{"type":"string","required":true}}}},"azurerm_cognitive_account":{"block":{"attributes":{"custom_question_answering_search_service_id":{"type":"string","optional":true},"custom_question_answering_search_service_key":{"type":"string","optional":true},"custom_subdomain_name":{"type":"string","optional":true},"dynamic_throttling_enabled":{"type":"bool","optional":true},"endpoint":{"type":"string","computed":true},"fqdns":{"type":["list","string"],"optional":true},"kind":{"type":"string","required":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"metrics_advisor_aad_client_id":{"type":"string","optional":true},"metrics_advisor_aad_tenant_id":{"type":"string","optional":true},"metrics_advisor_super_user_name":{"type":"string","optional":true},"metrics_advisor_website_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"outbound_network_access_restricted":{"type":"bool","optional":true,"default":false},"primary_access_key":{"type":"string","computed":true},"project_management_enabled":{"type":"bool","optional":true,"default":false},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"qna_runtime_endpoint":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_acls":{"nesting_mode":3,"block":{"attributes":{"bypass":{"type":"string","optional":true},"default_action":{"type":"string","required":true},"ip_rules":{"type":["set","string"],"optional":true}},"block_types":{"virtual_network_rules":{"nesting_mode":4,"block":{"attributes":{"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"required_with":["custom_subdomain_name"]},"network_injection":{"nesting_mode":3,"block":{"attributes":{"scenario":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true},"storage":{"nesting_mode":3,"block":{"attributes":{"identity_client_id":{"type":"string","optional":true},"storage_account_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_cognitive_account_customer_managed_key":{"block":{"attributes":{"cognitive_account_id":{"type":"string","required":true},"identity_client_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","required":true}}}},"azurerm_cognitive_account_rai_blocklist":{"block":{"attributes":{"cognitive_account_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true}}}},"azurerm_cognitive_account_rai_policy":{"block":{"attributes":{"base_policy_name":{"type":"string","required":true},"cognitive_account_id":{"type":"string","required":true},"mode":{"type":"string","optional":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"content_filter":{"nesting_mode":3,"block":{"attributes":{"block_enabled":{"type":"bool","required":true},"filter_enabled":{"type":"bool","required":true},"name":{"type":"string","required":true},"severity_threshold":{"type":"string","required":true},"source":{"type":"string","required":true}}},"required":true}}}},"azurerm_cognitive_deployment":{"block":{"attributes":{"cognitive_account_id":{"type":"string","required":true},"dynamic_throttling_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"rai_policy_name":{"type":"string","optional":true},"version_upgrade_option":{"type":"string","optional":true,"default":"OnceNewDefaultVersionAvailable"}},"block_types":{"model":{"nesting_mode":3,"block":{"attributes":{"format":{"type":"string","required":true},"name":{"type":"string","required":true},"version":{"type":"string","optional":true}}},"required":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"default":1},"family":{"type":"string","optional":true},"name":{"type":"string","required":true},"size":{"type":"string","optional":true},"tier":{"type":"string","optional":true}}},"required":true}}}},"azurerm_communication_service":{"block":{"attributes":{"data_location":{"type":"string","optional":true,"default":"United States"},"hostname":{"type":"string","computed":true},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_communication_service_email_domain_association":{"block":{"attributes":{"communication_service_id":{"type":"string","required":true},"email_service_domain_id":{"type":"string","required":true}}}},"azurerm_confidential_ledger":{"block":{"attributes":{"identity_service_endpoint":{"type":"string","computed":true},"ledger_endpoint":{"type":"string","computed":true},"ledger_type":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"azuread_based_service_principal":{"nesting_mode":3,"block":{"attributes":{"ledger_role_name":{"type":"string","required":true},"principal_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}},"required":true},"certificate_based_security_principal":{"nesting_mode":3,"block":{"attributes":{"ledger_role_name":{"type":"string","required":true},"pem_public_key":{"type":"string","required":true}}},"optional":true}}}},"azurerm_consumption_budget_management_group":{"block":{"attributes":{"amount":{"type":"number","required":true},"etag":{"type":"string","optional":true,"computed":true},"management_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"time_grain":{"type":"string","optional":true,"default":"Monthly"}},"block_types":{"filter":{"nesting_mode":3,"block":{"block_types":{"dimension":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]},"tag":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]}}},"optional":true},"notification":{"nesting_mode":4,"block":{"attributes":{"contact_emails":{"type":["list","string"],"required":true},"enabled":{"type":"bool","optional":true,"default":true},"operator":{"type":"string","required":true},"threshold":{"type":"number","required":true},"threshold_type":{"type":"string","optional":true,"default":"Actual"}}},"required":true},"time_period":{"nesting_mode":3,"block":{"attributes":{"end_date":{"type":"string","optional":true,"computed":true},"start_date":{"type":"string","required":true}}},"required":true}}}},"azurerm_consumption_budget_resource_group":{"block":{"attributes":{"amount":{"type":"number","required":true},"etag":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"resource_group_id":{"type":"string","required":true},"time_grain":{"type":"string","optional":true,"default":"Monthly"}},"block_types":{"filter":{"nesting_mode":3,"block":{"block_types":{"dimension":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]},"tag":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]}}},"optional":true},"notification":{"nesting_mode":4,"block":{"attributes":{"contact_emails":{"type":["list","string"],"optional":true},"contact_groups":{"type":["list","string"],"optional":true},"contact_roles":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"operator":{"type":"string","required":true},"threshold":{"type":"number","required":true},"threshold_type":{"type":"string","optional":true,"default":"Actual"}}},"required":true},"time_period":{"nesting_mode":3,"block":{"attributes":{"end_date":{"type":"string","optional":true,"computed":true},"start_date":{"type":"string","required":true}}},"required":true}}}},"azurerm_consumption_budget_subscription":{"block":{"attributes":{"amount":{"type":"number","required":true},"etag":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"subscription_id":{"type":"string","required":true},"time_grain":{"type":"string","optional":true,"default":"Monthly"}},"block_types":{"filter":{"nesting_mode":3,"block":{"block_types":{"dimension":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]},"tag":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"In"},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.dimension","filter.0.tag"]}}},"optional":true},"notification":{"nesting_mode":4,"block":{"attributes":{"contact_emails":{"type":["list","string"],"optional":true},"contact_groups":{"type":["list","string"],"optional":true},"contact_roles":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"operator":{"type":"string","required":true},"threshold":{"type":"number","required":true},"threshold_type":{"type":"string","optional":true,"default":"Actual"}}},"required":true},"time_period":{"nesting_mode":3,"block":{"attributes":{"end_date":{"type":"string","optional":true,"computed":true},"start_date":{"type":"string","required":true}}},"required":true}}}},"azurerm_container_app":{"block":{"attributes":{"container_app_environment_id":{"type":"string","required":true},"custom_domain_verification_id":{"type":"string","computed":true},"latest_revision_fqdn":{"type":"string","computed":true},"latest_revision_name":{"type":"string","computed":true},"location":{"type":"string","computed":true},"max_inactive_revisions":{"type":"number","optional":true},"name":{"type":"string","required":true},"outbound_ip_addresses":{"type":["list","string"],"computed":true},"resource_group_name":{"type":"string","required":true},"revision_mode":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workload_profile_name":{"type":"string","optional":true}},"block_types":{"dapr":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_port":{"type":"number","optional":true},"app_protocol":{"type":"string","optional":true,"default":"http"}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"ingress":{"nesting_mode":3,"block":{"attributes":{"allow_insecure_connections":{"type":"bool","optional":true,"default":false},"client_certificate_mode":{"type":"string","optional":true},"custom_domain":{"type":["list",["object",{"certificate_binding_type":"string","certificate_id":"string","name":"string"}]],"computed":true},"exposed_port":{"type":"number","optional":true},"external_enabled":{"type":"bool","optional":true,"default":false},"fqdn":{"type":"string","computed":true},"target_port":{"type":"number","required":true},"transport":{"type":"string","optional":true,"default":"auto"}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allow_credentials_enabled":{"type":"bool","optional":true,"default":false},"allowed_headers":{"type":["list","string"],"optional":true},"allowed_methods":{"type":["list","string"],"optional":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"optional":true},"max_age_in_seconds":{"type":"number","optional":true}}},"optional":true},"ip_security_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"description":{"type":"string","optional":true},"ip_address_range":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true},"traffic_weight":{"nesting_mode":3,"block":{"attributes":{"label":{"type":"string","optional":true},"latest_revision":{"type":"bool","optional":true,"default":false},"percentage":{"type":"number","required":true},"revision_suffix":{"type":"string","optional":true}}},"required":true}}},"optional":true},"registry":{"nesting_mode":3,"block":{"attributes":{"identity":{"type":"string","optional":true},"password_secret_name":{"type":"string","optional":true},"server":{"type":"string","required":true},"username":{"type":"string","optional":true}}},"optional":true},"secret":{"nesting_mode":4,"block":{"attributes":{"identity":{"type":"string","optional":true},"key_vault_secret_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"template":{"nesting_mode":3,"block":{"attributes":{"cooldown_period_in_seconds":{"type":"number","optional":true,"default":300},"max_replicas":{"type":"number","optional":true,"default":10},"min_replicas":{"type":"number","optional":true,"default":0},"polling_interval_in_seconds":{"type":"number","optional":true,"default":30},"revision_suffix":{"type":"string","optional":true,"computed":true},"termination_grace_period_seconds":{"type":"number","optional":true,"default":0}},"block_types":{"azure_queue_scale_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"queue_length":{"type":"number","required":true},"queue_name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"secret_name":{"type":"string","required":true},"trigger_parameter":{"type":"string","required":true}}},"required":true}}},"optional":true},"container":{"nesting_mode":3,"block":{"attributes":{"args":{"type":["list","string"],"optional":true},"command":{"type":["list","string"],"optional":true},"cpu":{"type":"number","required":true},"ephemeral_storage":{"type":"string","computed":true},"image":{"type":"string","required":true},"memory":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"env":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"secret_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"liveness_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":1},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"termination_grace_period_seconds":{"type":"number","computed":true},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"readiness_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":0},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"success_count_threshold":{"type":"number","optional":true,"default":3},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"startup_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":0},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"termination_grace_period_seconds":{"type":"number","computed":true},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"volume_mounts":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"path":{"type":"string","required":true},"sub_path":{"type":"string","optional":true}}},"optional":true}}},"required":true},"custom_scale_rule":{"nesting_mode":3,"block":{"attributes":{"custom_rule_type":{"type":"string","required":true},"metadata":{"type":["map","string"],"required":true},"name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"secret_name":{"type":"string","required":true},"trigger_parameter":{"type":"string","required":true}}},"optional":true}}},"optional":true},"http_scale_rule":{"nesting_mode":3,"block":{"attributes":{"concurrent_requests":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"secret_name":{"type":"string","required":true},"trigger_parameter":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"init_container":{"nesting_mode":3,"block":{"attributes":{"args":{"type":["list","string"],"optional":true},"command":{"type":["list","string"],"optional":true},"cpu":{"type":"number","optional":true},"ephemeral_storage":{"type":"string","computed":true},"image":{"type":"string","required":true},"memory":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"env":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"secret_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"volume_mounts":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"path":{"type":"string","required":true},"sub_path":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"tcp_scale_rule":{"nesting_mode":3,"block":{"attributes":{"concurrent_requests":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"secret_name":{"type":"string","required":true},"trigger_parameter":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"volume":{"nesting_mode":3,"block":{"attributes":{"mount_options":{"type":"string","optional":true},"name":{"type":"string","required":true},"storage_name":{"type":"string","optional":true},"storage_type":{"type":"string","optional":true,"default":"EmptyDir"}}},"optional":true}}},"required":true}}}},"azurerm_container_app_custom_domain":{"block":{"attributes":{"certificate_binding_type":{"type":"string","optional":true},"container_app_environment_certificate_id":{"type":"string","optional":true,"required_with":["certificate_binding_type"]},"container_app_environment_managed_certificate_id":{"type":"string","computed":true},"container_app_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_container_app_environment":{"block":{"attributes":{"custom_domain_verification_id":{"type":"string","computed":true},"dapr_application_insights_connection_string":{"type":"string","optional":true},"default_domain":{"type":"string","computed":true},"docker_bridge_cidr":{"type":"string","computed":true},"infrastructure_resource_group_name":{"type":"string","optional":true,"required_with":["workload_profile"]},"infrastructure_subnet_id":{"type":"string","optional":true},"internal_load_balancer_enabled":{"type":"bool","optional":true,"default":false,"required_with":["infrastructure_subnet_id"]},"location":{"type":"string","required":true},"log_analytics_workspace_id":{"type":"string","optional":true},"logs_destination":{"type":"string","optional":true,"computed":true},"mutual_tls_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"platform_reserved_cidr":{"type":"string","computed":true},"platform_reserved_dns_ip_address":{"type":"string","computed":true},"public_network_access":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"static_ip_address":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"zone_redundancy_enabled":{"type":"bool","optional":true,"default":false,"required_with":["infrastructure_subnet_id"]}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"workload_profile":{"nesting_mode":4,"block":{"attributes":{"maximum_count":{"type":"number","optional":true},"minimum_count":{"type":"number","optional":true},"name":{"type":"string","required":true},"workload_profile_type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_container_app_environment_certificate":{"block":{"attributes":{"certificate_blob_base64":{"type":"string","required":true},"certificate_password":{"type":"string","required":true},"container_app_environment_id":{"type":"string","required":true},"expiration_date":{"type":"string","computed":true},"issue_date":{"type":"string","computed":true},"issuer":{"type":"string","computed":true},"name":{"type":"string","required":true},"subject_name":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_container_app_environment_custom_domain":{"block":{"attributes":{"certificate_blob_base64":{"type":"string","required":true},"certificate_password":{"type":"string","required":true},"container_app_environment_id":{"type":"string","required":true},"dns_suffix":{"type":"string","required":true}}}},"azurerm_container_app_environment_dapr_component":{"block":{"attributes":{"component_type":{"type":"string","required":true},"container_app_environment_id":{"type":"string","required":true},"ignore_errors":{"type":"bool","optional":true,"default":false},"init_timeout":{"type":"string","optional":true,"default":"5s"},"name":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"version":{"type":"string","required":true}},"block_types":{"metadata":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"secret_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"secret":{"nesting_mode":4,"block":{"attributes":{"identity":{"type":"string","optional":true},"key_vault_secret_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_container_app_environment_storage":{"block":{"attributes":{"access_key":{"type":"string","optional":true,"required_with":["account_name"]},"access_mode":{"type":"string","required":true},"account_name":{"type":"string","optional":true,"conflicts_with":["nfs_server_url"],"required_with":["access_key"]},"container_app_environment_id":{"type":"string","required":true},"name":{"type":"string","required":true},"nfs_server_url":{"type":"string","optional":true,"conflicts_with":["account_name"]},"share_name":{"type":"string","required":true}}}},"azurerm_container_app_job":{"block":{"attributes":{"container_app_environment_id":{"type":"string","required":true},"event_stream_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_addresses":{"type":["list","string"],"computed":true},"replica_retry_limit":{"type":"number","optional":true},"replica_timeout_in_seconds":{"type":"number","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workload_profile_name":{"type":"string","optional":true}},"block_types":{"event_trigger_config":{"nesting_mode":3,"block":{"attributes":{"parallelism":{"type":"number","optional":true,"default":1},"replica_completion_count":{"type":"number","optional":true,"default":1}},"block_types":{"scale":{"nesting_mode":3,"block":{"attributes":{"max_executions":{"type":"number","optional":true,"default":100},"min_executions":{"type":"number","optional":true,"default":0},"polling_interval_in_seconds":{"type":"number","optional":true,"default":30}},"block_types":{"rules":{"nesting_mode":3,"block":{"attributes":{"custom_rule_type":{"type":"string","required":true},"metadata":{"type":["map","string"],"required":true},"name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"secret_name":{"type":"string","required":true},"trigger_parameter":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true}}},"optional":true,"exactly_one_of":["event_trigger_config","manual_trigger_config","schedule_trigger_config"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"manual_trigger_config":{"nesting_mode":3,"block":{"attributes":{"parallelism":{"type":"number","optional":true,"default":1},"replica_completion_count":{"type":"number","optional":true,"default":1}}},"optional":true,"exactly_one_of":["event_trigger_config","manual_trigger_config","schedule_trigger_config"]},"registry":{"nesting_mode":3,"block":{"attributes":{"identity":{"type":"string","optional":true},"password_secret_name":{"type":"string","optional":true},"server":{"type":"string","required":true},"username":{"type":"string","optional":true}}},"optional":true},"schedule_trigger_config":{"nesting_mode":3,"block":{"attributes":{"cron_expression":{"type":"string","required":true},"parallelism":{"type":"number","optional":true,"default":1},"replica_completion_count":{"type":"number","optional":true,"default":1}}},"optional":true,"exactly_one_of":["event_trigger_config","manual_trigger_config","schedule_trigger_config"]},"secret":{"nesting_mode":4,"block":{"attributes":{"identity":{"type":"string","optional":true},"key_vault_secret_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"template":{"nesting_mode":3,"block":{"block_types":{"container":{"nesting_mode":3,"block":{"attributes":{"args":{"type":["list","string"],"optional":true},"command":{"type":["list","string"],"optional":true},"cpu":{"type":"number","required":true},"ephemeral_storage":{"type":"string","computed":true},"image":{"type":"string","required":true},"memory":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"env":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"secret_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"liveness_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":1},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"termination_grace_period_seconds":{"type":"number","computed":true},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"readiness_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":0},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"success_count_threshold":{"type":"number","optional":true,"default":3},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"startup_probe":{"nesting_mode":3,"block":{"attributes":{"failure_count_threshold":{"type":"number","optional":true,"default":3},"host":{"type":"string","optional":true},"initial_delay":{"type":"number","optional":true,"default":0},"interval_seconds":{"type":"number","optional":true,"default":10},"path":{"type":"string","optional":true,"computed":true},"port":{"type":"number","required":true},"termination_grace_period_seconds":{"type":"number","computed":true},"timeout":{"type":"number","optional":true,"default":1},"transport":{"type":"string","required":true}},"block_types":{"header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"volume_mounts":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"path":{"type":"string","required":true},"sub_path":{"type":"string","optional":true}}},"optional":true}}},"required":true},"init_container":{"nesting_mode":3,"block":{"attributes":{"args":{"type":["list","string"],"optional":true},"command":{"type":["list","string"],"optional":true},"cpu":{"type":"number","optional":true},"ephemeral_storage":{"type":"string","computed":true},"image":{"type":"string","required":true},"memory":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"env":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"secret_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"volume_mounts":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"path":{"type":"string","required":true},"sub_path":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"volume":{"nesting_mode":3,"block":{"attributes":{"mount_options":{"type":"string","optional":true},"name":{"type":"string","required":true},"storage_name":{"type":"string","optional":true},"storage_type":{"type":"string","optional":true,"default":"EmptyDir"}}},"optional":true}}},"required":true}}}},"azurerm_container_connected_registry":{"block":{"attributes":{"audit_log_enabled":{"type":"bool","optional":true,"default":false},"client_token_ids":{"type":["list","string"],"optional":true},"container_registry_id":{"type":"string","required":true},"log_level":{"type":"string","optional":true,"default":"None"},"mode":{"type":"string","optional":true,"default":"ReadWrite"},"name":{"type":"string","required":true},"parent_registry_id":{"type":"string","optional":true},"sync_message_ttl":{"type":"string","optional":true,"default":"P1D"},"sync_schedule":{"type":"string","optional":true,"default":"* * * * *"},"sync_token_id":{"type":"string","required":true},"sync_window":{"type":"string","optional":true}},"block_types":{"notification":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"digest":{"type":"string","optional":true},"name":{"type":"string","required":true},"tag":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_container_group":{"block":{"attributes":{"dns_name_label":{"type":"string","optional":true},"dns_name_label_reuse_policy":{"type":"string","optional":true,"default":"Unsecure"},"exposed_port":{"type":["set",["object",{"port":"number","protocol":"string"}]],"optional":true,"computed":true},"fqdn":{"type":"string","computed":true},"ip_address":{"type":"string","computed":true},"ip_address_type":{"type":"string","optional":true,"default":"Public"},"key_vault_key_id":{"type":"string","optional":true},"key_vault_user_assigned_identity_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_profile_id":{"type":"string","optional":true,"computed":true},"os_type":{"type":"string","required":true},"priority":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"restart_policy":{"type":"string","optional":true,"default":"Always"},"sku":{"type":"string","optional":true,"default":"Standard"},"subnet_ids":{"type":["set","string"],"optional":true,"conflicts_with":["dns_name_label"]},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"container":{"nesting_mode":3,"block":{"attributes":{"commands":{"type":["list","string"],"optional":true,"computed":true},"cpu":{"type":"number","required":true},"cpu_limit":{"type":"number","optional":true},"environment_variables":{"type":["map","string"],"optional":true},"image":{"type":"string","required":true},"memory":{"type":"number","required":true},"memory_limit":{"type":"number","optional":true},"name":{"type":"string","required":true},"secure_environment_variables":{"type":["map","string"],"optional":true}},"block_types":{"liveness_probe":{"nesting_mode":3,"block":{"attributes":{"exec":{"type":["list","string"],"optional":true},"failure_threshold":{"type":"number","optional":true},"initial_delay_seconds":{"type":"number","optional":true},"period_seconds":{"type":"number","optional":true},"success_threshold":{"type":"number","optional":true},"timeout_seconds":{"type":"number","optional":true}},"block_types":{"http_get":{"nesting_mode":3,"block":{"attributes":{"http_headers":{"type":["map","string"],"optional":true},"path":{"type":"string","optional":true},"port":{"type":"number","optional":true},"scheme":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"ports":{"nesting_mode":4,"block":{"attributes":{"port":{"type":"number","optional":true},"protocol":{"type":"string","optional":true,"default":"TCP"}}},"optional":true},"readiness_probe":{"nesting_mode":3,"block":{"attributes":{"exec":{"type":["list","string"],"optional":true},"failure_threshold":{"type":"number","optional":true},"initial_delay_seconds":{"type":"number","optional":true},"period_seconds":{"type":"number","optional":true},"success_threshold":{"type":"number","optional":true},"timeout_seconds":{"type":"number","optional":true}},"block_types":{"http_get":{"nesting_mode":3,"block":{"attributes":{"http_headers":{"type":["map","string"],"optional":true},"path":{"type":"string","optional":true},"port":{"type":"number","optional":true},"scheme":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"security":{"nesting_mode":3,"block":{"attributes":{"privilege_enabled":{"type":"bool","required":true}}},"optional":true},"volume":{"nesting_mode":3,"block":{"attributes":{"empty_dir":{"type":"bool","optional":true,"default":false},"mount_path":{"type":"string","required":true},"name":{"type":"string","required":true},"read_only":{"type":"bool","optional":true,"default":false},"secret":{"type":["map","string"],"optional":true},"share_name":{"type":"string","optional":true},"storage_account_key":{"type":"string","optional":true},"storage_account_name":{"type":"string","optional":true}},"block_types":{"git_repo":{"nesting_mode":3,"block":{"attributes":{"directory":{"type":"string","optional":true},"revision":{"type":"string","optional":true},"url":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"required":true},"diagnostics":{"nesting_mode":3,"block":{"block_types":{"log_analytics":{"nesting_mode":3,"block":{"attributes":{"log_type":{"type":"string","optional":true},"metadata":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true},"workspace_key":{"type":"string","required":true}}},"required":true}}},"optional":true},"dns_config":{"nesting_mode":3,"block":{"attributes":{"nameservers":{"type":["list","string"],"required":true},"options":{"type":["set","string"],"optional":true},"search_domains":{"type":["set","string"],"optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"image_registry_credential":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"server":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true},"username":{"type":"string","optional":true}}},"optional":true},"init_container":{"nesting_mode":3,"block":{"attributes":{"commands":{"type":["list","string"],"optional":true,"computed":true},"environment_variables":{"type":["map","string"],"optional":true},"image":{"type":"string","required":true},"name":{"type":"string","required":true},"secure_environment_variables":{"type":["map","string"],"optional":true}},"block_types":{"security":{"nesting_mode":3,"block":{"attributes":{"privilege_enabled":{"type":"bool","required":true}}},"optional":true},"volume":{"nesting_mode":3,"block":{"attributes":{"empty_dir":{"type":"bool","optional":true,"default":false},"mount_path":{"type":"string","required":true},"name":{"type":"string","required":true},"read_only":{"type":"bool","optional":true,"default":false},"secret":{"type":["map","string"],"optional":true},"share_name":{"type":"string","optional":true},"storage_account_key":{"type":"string","optional":true},"storage_account_name":{"type":"string","optional":true}},"block_types":{"git_repo":{"nesting_mode":3,"block":{"attributes":{"directory":{"type":"string","optional":true},"revision":{"type":"string","optional":true},"url":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_container_registry":{"block":{"attributes":{"admin_enabled":{"type":"bool","optional":true,"default":false},"admin_password":{"type":"string","computed":true},"admin_username":{"type":"string","computed":true},"anonymous_pull_enabled":{"type":"bool","optional":true},"data_endpoint_enabled":{"type":"bool","optional":true},"data_endpoint_host_names":{"type":["set","string"],"computed":true},"encryption":{"type":["list",["object",{"identity_client_id":"string","key_vault_key_id":"string"}]],"optional":true,"computed":true},"export_policy_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"login_server":{"type":"string","computed":true},"name":{"type":"string","required":true},"network_rule_bypass_option":{"type":"string","optional":true,"default":"AzureServices"},"network_rule_set":{"type":["list",["object",{"default_action":"string","ip_rule":["set",["object",{"action":"string","ip_range":"string"}]]}]],"optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"quarantine_policy_enabled":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"retention_policy_in_days":{"type":"number","optional":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"trust_policy_enabled":{"type":"bool","optional":true,"default":false},"zone_redundancy_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"georeplications":{"nesting_mode":3,"block":{"attributes":{"location":{"type":"string","required":true},"regional_endpoint_enabled":{"type":"bool","optional":true},"tags":{"type":["map","string"],"optional":true},"zone_redundancy_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_container_registry_agent_pool":{"block":{"attributes":{"container_registry_name":{"type":"string","required":true},"instance_count":{"type":"number","optional":true,"default":1},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","optional":true,"default":"S1"},"virtual_network_subnet_id":{"type":"string","optional":true}}}},"azurerm_container_registry_cache_rule":{"block":{"attributes":{"container_registry_id":{"type":"string","required":true},"credential_set_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"source_repo":{"type":"string","required":true},"target_repo":{"type":"string","required":true}}}},"azurerm_container_registry_credential_set":{"block":{"attributes":{"container_registry_id":{"type":"string","required":true},"login_server":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"authentication_credentials":{"nesting_mode":3,"block":{"attributes":{"password_secret_id":{"type":"string","required":true},"username_secret_id":{"type":"string","required":true}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_container_registry_scope_map":{"block":{"attributes":{"actions":{"type":["list","string"],"required":true},"container_registry_name":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_container_registry_task":{"block":{"attributes":{"agent_pool_name":{"type":"string","optional":true,"conflicts_with":["agent_setting"]},"container_registry_id":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"is_system_task":{"type":"bool","optional":true,"default":false},"log_template":{"type":"string","optional":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"timeout_in_seconds":{"type":"number","optional":true,"default":3600}},"block_types":{"agent_setting":{"nesting_mode":3,"block":{"attributes":{"cpu":{"type":"number","required":true}}},"optional":true,"conflicts_with":["agent_pool_name"]},"base_image_trigger":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"type":{"type":"string","required":true},"update_trigger_endpoint":{"type":"string","optional":true},"update_trigger_payload_type":{"type":"string","optional":true}}},"optional":true},"docker_step":{"nesting_mode":3,"block":{"attributes":{"arguments":{"type":["map","string"],"optional":true},"cache_enabled":{"type":"bool","optional":true,"default":true},"context_access_token":{"type":"string","required":true},"context_path":{"type":"string","required":true},"dockerfile_path":{"type":"string","required":true},"image_names":{"type":["list","string"],"optional":true},"push_enabled":{"type":"bool","optional":true,"default":true},"secret_arguments":{"type":["map","string"],"optional":true},"target":{"type":"string","optional":true}}},"optional":true,"conflicts_with":["file_step","encoded_step"]},"encoded_step":{"nesting_mode":3,"block":{"attributes":{"context_access_token":{"type":"string","optional":true},"context_path":{"type":"string","optional":true},"secret_values":{"type":["map","string"],"optional":true},"task_content":{"type":"string","required":true},"value_content":{"type":"string","optional":true},"values":{"type":["map","string"],"optional":true}}},"optional":true,"conflicts_with":["docker_step","file_step"]},"file_step":{"nesting_mode":3,"block":{"attributes":{"context_access_token":{"type":"string","optional":true},"context_path":{"type":"string","optional":true},"secret_values":{"type":["map","string"],"optional":true},"task_file_path":{"type":"string","required":true},"value_file_path":{"type":"string","optional":true},"values":{"type":["map","string"],"optional":true}}},"optional":true,"conflicts_with":["docker_step","encoded_step"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"platform":{"nesting_mode":3,"block":{"attributes":{"architecture":{"type":"string","optional":true},"os":{"type":"string","required":true},"variant":{"type":"string","optional":true}}},"optional":true},"registry_credential":{"nesting_mode":3,"block":{"block_types":{"custom":{"nesting_mode":4,"block":{"attributes":{"identity":{"type":"string","optional":true},"login_server":{"type":"string","required":true},"password":{"type":"string","optional":true},"username":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["registry_credential.0.source","registry_credential.0.custom"]},"source":{"nesting_mode":3,"block":{"attributes":{"login_mode":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["registry_credential.0.source","registry_credential.0.custom"]}}},"optional":true},"source_trigger":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"events":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"repository_url":{"type":"string","required":true},"source_type":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"expire_in_seconds":{"type":"number","optional":true},"refresh_token":{"type":"string","optional":true},"scope":{"type":"string","optional":true},"token":{"type":"string","required":true},"token_type":{"type":"string","required":true}}},"optional":true}}},"optional":true},"timer_trigger":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"schedule":{"type":"string","required":true}}},"optional":true}}}},"azurerm_container_registry_task_schedule_run_now":{"block":{"attributes":{"container_registry_task_id":{"type":"string","required":true}}}},"azurerm_container_registry_token":{"block":{"attributes":{"container_registry_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scope_map_id":{"type":"string","required":true}}}},"azurerm_container_registry_token_password":{"block":{"attributes":{"container_registry_token_id":{"type":"string","required":true}},"block_types":{"password1":{"nesting_mode":3,"block":{"attributes":{"expiry":{"type":"string","optional":true},"value":{"type":"string","computed":true}}},"required":true},"password2":{"nesting_mode":3,"block":{"attributes":{"expiry":{"type":"string","optional":true},"value":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_container_registry_webhook":{"block":{"attributes":{"actions":{"type":["set","string"],"required":true},"custom_headers":{"type":["map","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"registry_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scope":{"type":"string","optional":true,"default":""},"service_uri":{"type":"string","required":true},"status":{"type":"string","optional":true,"default":"enabled"},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_cosmosdb_account":{"block":{"attributes":{"access_key_metadata_writes_enabled":{"type":"bool","optional":true,"default":true},"analytical_storage_enabled":{"type":"bool","optional":true,"default":false},"automatic_failover_enabled":{"type":"bool","optional":true,"default":false},"burst_capacity_enabled":{"type":"bool","optional":true,"default":false},"create_mode":{"type":"string","optional":true,"computed":true},"default_identity_type":{"type":"string","optional":true,"default":"FirstPartyIdentity"},"endpoint":{"type":"string","computed":true},"free_tier_enabled":{"type":"bool","optional":true,"default":false},"ip_range_filter":{"type":["set","string"],"optional":true},"is_virtual_network_filter_enabled":{"type":"bool","optional":true,"default":false},"key_vault_key_id":{"type":"string","optional":true,"conflicts_with":["managed_hsm_key_id"]},"kind":{"type":"string","optional":true,"default":"GlobalDocumentDB"},"local_authentication_disabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"managed_hsm_key_id":{"type":"string","optional":true,"conflicts_with":["key_vault_key_id"]},"minimal_tls_version":{"type":"string","optional":true,"default":"Tls12"},"mongo_server_version":{"type":"string","optional":true,"computed":true},"multiple_write_locations_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"network_acl_bypass_for_azure_services":{"type":"bool","optional":true,"default":false},"network_acl_bypass_ids":{"type":["list","string"],"optional":true},"offer_type":{"type":"string","required":true},"partition_merge_enabled":{"type":"bool","optional":true,"default":false},"primary_key":{"type":"string","computed":true},"primary_mongodb_connection_string":{"type":"string","computed":true},"primary_readonly_key":{"type":"string","computed":true},"primary_readonly_mongodb_connection_string":{"type":"string","computed":true},"primary_readonly_sql_connection_string":{"type":"string","computed":true},"primary_sql_connection_string":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"read_endpoints":{"type":["list","string"],"computed":true},"resource_group_name":{"type":"string","required":true},"secondary_key":{"type":"string","computed":true},"secondary_mongodb_connection_string":{"type":"string","computed":true},"secondary_readonly_key":{"type":"string","computed":true},"secondary_readonly_mongodb_connection_string":{"type":"string","computed":true},"secondary_readonly_sql_connection_string":{"type":"string","computed":true},"secondary_sql_connection_string":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"write_endpoints":{"type":["list","string"],"computed":true}},"block_types":{"analytical_storage":{"nesting_mode":3,"block":{"attributes":{"schema_type":{"type":"string","required":true}}},"optional":true,"computed":true},"backup":{"nesting_mode":3,"block":{"attributes":{"interval_in_minutes":{"type":"number","optional":true,"computed":true},"retention_in_hours":{"type":"number","optional":true,"computed":true},"storage_redundancy":{"type":"string","optional":true,"computed":true},"tier":{"type":"string","optional":true,"computed":true},"type":{"type":"string","required":true}}},"optional":true,"computed":true},"capabilities":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true}}},"optional":true,"computed":true},"capacity":{"nesting_mode":3,"block":{"attributes":{"total_throughput_limit":{"type":"number","required":true}}},"optional":true,"computed":true},"consistency_policy":{"nesting_mode":3,"block":{"attributes":{"consistency_level":{"type":"string","required":true},"max_interval_in_seconds":{"type":"number","optional":true,"default":5},"max_staleness_prefix":{"type":"number","optional":true,"default":100}}},"required":true},"cors_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["list","string"],"required":true},"allowed_methods":{"type":["list","string"],"required":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"required":true},"max_age_in_seconds":{"type":"number","optional":true}}},"optional":true},"geo_location":{"nesting_mode":4,"block":{"attributes":{"failover_priority":{"type":"number","required":true},"id":{"type":"string","computed":true},"location":{"type":"string","required":true},"zone_redundant":{"type":"bool","optional":true,"default":false}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"restore":{"nesting_mode":3,"block":{"attributes":{"restore_timestamp_in_utc":{"type":"string","required":true},"source_cosmosdb_account_id":{"type":"string","required":true},"tables_to_restore":{"type":["list","string"],"optional":true}},"block_types":{"database":{"nesting_mode":4,"block":{"attributes":{"collection_names":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true}}},"optional":true},"gremlin_database":{"nesting_mode":3,"block":{"attributes":{"graph_names":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true}}},"optional":true}}},"optional":true},"virtual_network_rule":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","required":true},"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_cosmosdb_cassandra_cluster":{"block":{"attributes":{"authentication_method":{"type":"string","optional":true,"default":"Cassandra"},"client_certificate_pems":{"type":["list","string"],"optional":true},"default_admin_password":{"type":"string","required":true},"delegated_management_subnet_id":{"type":"string","required":true},"external_gossip_certificate_pems":{"type":["list","string"],"optional":true},"external_seed_node_ip_addresses":{"type":["list","string"],"optional":true},"hours_between_backups":{"type":"number","optional":true,"default":24},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"repair_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true,"default":"3.11"}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_cosmosdb_cassandra_datacenter":{"block":{"attributes":{"availability_zones_enabled":{"type":"bool","optional":true,"default":true},"backup_storage_customer_key_uri":{"type":"string","optional":true},"base64_encoded_yaml_fragment":{"type":"string","optional":true},"cassandra_cluster_id":{"type":"string","required":true},"delegated_management_subnet_id":{"type":"string","required":true},"disk_count":{"type":"number","optional":true},"disk_sku":{"type":"string","optional":true,"default":"P30"},"location":{"type":"string","required":true},"managed_disk_customer_key_uri":{"type":"string","optional":true},"name":{"type":"string","required":true},"node_count":{"type":"number","optional":true,"default":3},"seed_node_ip_addresses":{"type":["list","string"],"computed":true},"sku_name":{"type":"string","optional":true,"default":"Standard_E16s_v5"}}}},"azurerm_cosmosdb_cassandra_keyspace":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true}}}},"azurerm_cosmosdb_cassandra_table":{"block":{"attributes":{"analytical_storage_ttl":{"type":"number","optional":true},"cassandra_keyspace_id":{"type":"string","required":true},"default_ttl":{"type":"number","optional":true},"name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true},"schema":{"nesting_mode":3,"block":{"block_types":{"cluster_key":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"order_by":{"type":"string","required":true}}},"optional":true},"column":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true},"partition_key":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_cosmosdb_gremlin_database":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true}}}},"azurerm_cosmosdb_gremlin_graph":{"block":{"attributes":{"account_name":{"type":"string","required":true},"analytical_storage_ttl":{"type":"number","optional":true},"database_name":{"type":"string","required":true},"default_ttl":{"type":"number","optional":true},"name":{"type":"string","required":true},"partition_key_path":{"type":"string","required":true},"partition_key_version":{"type":"number","optional":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true},"conflict_resolution_policy":{"nesting_mode":3,"block":{"attributes":{"conflict_resolution_path":{"type":"string","optional":true},"conflict_resolution_procedure":{"type":"string","optional":true},"mode":{"type":"string","required":true}}},"optional":true,"computed":true},"index_policy":{"nesting_mode":3,"block":{"attributes":{"automatic":{"type":"bool","optional":true,"default":true},"excluded_paths":{"type":["set","string"],"optional":true,"computed":true},"included_paths":{"type":["set","string"],"optional":true,"computed":true},"indexing_mode":{"type":"string","required":true}},"block_types":{"composite_index":{"nesting_mode":3,"block":{"block_types":{"index":{"nesting_mode":3,"block":{"attributes":{"order":{"type":"string","required":true},"path":{"type":"string","required":true}}},"required":true}}},"optional":true},"spatial_index":{"nesting_mode":3,"block":{"attributes":{"path":{"type":"string","required":true},"types":{"type":["set","string"],"computed":true}}},"optional":true}}},"optional":true,"computed":true},"unique_key":{"nesting_mode":4,"block":{"attributes":{"paths":{"type":["set","string"],"required":true}}},"optional":true}}}},"azurerm_cosmosdb_mongo_collection":{"block":{"attributes":{"account_name":{"type":"string","required":true},"analytical_storage_ttl":{"type":"number","optional":true},"database_name":{"type":"string","required":true},"default_ttl_seconds":{"type":"number","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"shard_key":{"type":"string","optional":true},"system_indexes":{"type":["list",["object",{"keys":["list","string"],"unique":"bool"}]],"computed":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true},"index":{"nesting_mode":4,"block":{"attributes":{"keys":{"type":["list","string"],"required":true},"unique":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_cosmosdb_mongo_database":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true}}}},"azurerm_cosmosdb_mongo_role_definition":{"block":{"attributes":{"cosmos_mongo_database_id":{"type":"string","required":true},"inherited_role_names":{"type":["list","string"],"optional":true},"role_name":{"type":"string","required":true}},"block_types":{"privilege":{"nesting_mode":3,"block":{"attributes":{"actions":{"type":["list","string"],"required":true}},"block_types":{"resource":{"nesting_mode":3,"block":{"attributes":{"collection_name":{"type":"string","optional":true},"db_name":{"type":"string","optional":true}}},"required":true}}},"optional":true}}}},"azurerm_cosmosdb_mongo_user_definition":{"block":{"attributes":{"cosmos_mongo_database_id":{"type":"string","required":true},"inherited_role_names":{"type":["list","string"],"optional":true},"password":{"type":"string","required":true},"username":{"type":"string","required":true}}}},"azurerm_cosmosdb_postgresql_cluster":{"block":{"attributes":{"administrator_login_password":{"type":"string","optional":true},"citus_version":{"type":"string","optional":true,"computed":true},"coordinator_public_ip_access_enabled":{"type":"bool","optional":true,"default":true},"coordinator_server_edition":{"type":"string","optional":true,"default":"GeneralPurpose"},"coordinator_storage_quota_in_mb":{"type":"number","optional":true},"coordinator_vcore_count":{"type":"number","optional":true},"earliest_restore_time":{"type":"string","computed":true},"ha_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"node_count":{"type":"number","required":true},"node_public_ip_access_enabled":{"type":"bool","optional":true,"default":false},"node_server_edition":{"type":"string","optional":true,"default":"MemoryOptimized"},"node_storage_quota_in_mb":{"type":"number","optional":true,"computed":true},"node_vcores":{"type":"number","optional":true,"computed":true},"point_in_time_in_utc":{"type":"string","optional":true,"required_with":["source_location","source_resource_id"]},"preferred_primary_zone":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"servers":{"type":["list",["object",{"fqdn":"string","name":"string"}]],"computed":true},"shards_on_coordinator_enabled":{"type":"bool","optional":true,"computed":true},"source_location":{"type":"string","optional":true,"required_with":["source_resource_id"]},"source_resource_id":{"type":"string","optional":true,"required_with":["source_location"]},"sql_version":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"maintenance_window":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"number","optional":true,"default":0},"start_hour":{"type":"number","optional":true,"default":0},"start_minute":{"type":"number","optional":true,"default":0}}},"optional":true}}}},"azurerm_cosmosdb_postgresql_coordinator_configuration":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_cosmosdb_postgresql_firewall_rule":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_cosmosdb_postgresql_node_configuration":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_cosmosdb_postgresql_role":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true}}}},"azurerm_cosmosdb_sql_container":{"block":{"attributes":{"account_name":{"type":"string","required":true},"analytical_storage_ttl":{"type":"number","optional":true},"database_name":{"type":"string","required":true},"default_ttl":{"type":"number","optional":true},"name":{"type":"string","required":true},"partition_key_kind":{"type":"string","optional":true,"default":"Hash"},"partition_key_paths":{"type":["list","string"],"required":true},"partition_key_version":{"type":"number","optional":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true},"conflict_resolution_policy":{"nesting_mode":3,"block":{"attributes":{"conflict_resolution_path":{"type":"string","optional":true},"conflict_resolution_procedure":{"type":"string","optional":true},"mode":{"type":"string","required":true}}},"optional":true,"computed":true},"indexing_policy":{"nesting_mode":3,"block":{"attributes":{"indexing_mode":{"type":"string","optional":true,"default":"consistent"}},"block_types":{"composite_index":{"nesting_mode":3,"block":{"block_types":{"index":{"nesting_mode":3,"block":{"attributes":{"order":{"type":"string","required":true},"path":{"type":"string","required":true}}},"required":true}}},"optional":true},"excluded_path":{"nesting_mode":3,"block":{"attributes":{"path":{"type":"string","required":true}}},"optional":true},"included_path":{"nesting_mode":3,"block":{"attributes":{"path":{"type":"string","required":true}}},"optional":true},"spatial_index":{"nesting_mode":3,"block":{"attributes":{"path":{"type":"string","required":true},"types":{"type":["set","string"],"computed":true}}},"optional":true}}},"optional":true,"computed":true},"unique_key":{"nesting_mode":4,"block":{"attributes":{"paths":{"type":["set","string"],"required":true}}},"optional":true}}}},"azurerm_cosmosdb_sql_database":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true}}}},"azurerm_cosmosdb_sql_dedicated_gateway":{"block":{"attributes":{"cosmosdb_account_id":{"type":"string","required":true},"instance_count":{"type":"number","required":true},"instance_size":{"type":"string","required":true}}}},"azurerm_cosmosdb_sql_function":{"block":{"attributes":{"body":{"type":"string","required":true},"container_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_cosmosdb_sql_role_assignment":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","optional":true,"computed":true},"principal_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"role_definition_id":{"type":"string","required":true},"scope":{"type":"string","required":true}}}},"azurerm_cosmosdb_sql_role_definition":{"block":{"attributes":{"account_name":{"type":"string","required":true},"assignable_scopes":{"type":["set","string"],"required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"role_definition_id":{"type":"string","optional":true,"computed":true},"type":{"type":"string","optional":true,"default":"CustomRole"}},"block_types":{"permissions":{"nesting_mode":4,"block":{"attributes":{"data_actions":{"type":["set","string"],"required":true}}},"required":true}}}},"azurerm_cosmosdb_sql_stored_procedure":{"block":{"attributes":{"account_name":{"type":"string","required":true},"body":{"type":"string","required":true},"container_name":{"type":"string","required":true},"database_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_cosmosdb_sql_trigger":{"block":{"attributes":{"body":{"type":"string","required":true},"container_id":{"type":"string","required":true},"name":{"type":"string","required":true},"operation":{"type":"string","required":true},"type":{"type":"string","required":true}}}},"azurerm_cosmosdb_table":{"block":{"attributes":{"account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"throughput":{"type":"number","optional":true,"computed":true}},"block_types":{"autoscale_settings":{"nesting_mode":3,"block":{"attributes":{"max_throughput":{"type":"number","optional":true,"computed":true,"conflicts_with":["throughput"]}}},"optional":true}}}},"azurerm_cost_anomaly_alert":{"block":{"attributes":{"display_name":{"type":"string","required":true},"email_addresses":{"type":["set","string"],"required":true},"email_subject":{"type":"string","required":true},"message":{"type":"string","optional":true},"name":{"type":"string","required":true},"notification_email":{"type":"string","optional":true,"computed":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_cost_management_scheduled_action":{"block":{"attributes":{"day_of_month":{"type":"number","optional":true},"days_of_week":{"type":["list","string"],"optional":true},"display_name":{"type":"string","required":true},"email_address_sender":{"type":"string","required":true},"email_addresses":{"type":["list","string"],"required":true},"email_subject":{"type":"string","required":true},"end_date":{"type":"string","required":true},"frequency":{"type":"string","required":true},"hour_of_day":{"type":"number","optional":true},"message":{"type":"string","optional":true},"name":{"type":"string","required":true},"start_date":{"type":"string","required":true},"view_id":{"type":"string","required":true},"weeks_of_month":{"type":["list","string"],"optional":true}}}},"azurerm_custom_ip_prefix":{"block":{"attributes":{"cidr":{"type":"string","required":true},"commissioning_enabled":{"type":"bool","optional":true,"default":false},"internet_advertising_disabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"parent_custom_ip_prefix_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"roa_validity_end_date":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"wan_validation_signed_message":{"type":"string","optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_custom_provider":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"action":{"nesting_mode":4,"block":{"attributes":{"endpoint":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["resource_type","action"]},"resource_type":{"nesting_mode":4,"block":{"attributes":{"endpoint":{"type":"string","required":true},"name":{"type":"string","required":true},"routing_type":{"type":"string","optional":true,"default":"Proxy"}}},"optional":true,"at_least_one_of":["resource_type","action"]},"validation":{"nesting_mode":4,"block":{"attributes":{"specification":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dashboard_grafana":{"block":{"attributes":{"api_key_enabled":{"type":"bool","optional":true,"default":false},"auto_generated_domain_name_label_scope":{"type":"string","optional":true,"default":"TenantReuse"},"deterministic_outbound_ip_enabled":{"type":"bool","optional":true,"default":false},"endpoint":{"type":"string","computed":true},"grafana_major_version":{"type":"string","required":true},"grafana_version":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip":{"type":["list","string"],"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Standard"},"tags":{"type":["map","string"],"optional":true},"zone_redundancy_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"azure_monitor_workspace_integrations":{"nesting_mode":3,"block":{"attributes":{"resource_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"smtp":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":false},"from_address":{"type":"string","required":true},"from_name":{"type":"string","optional":true,"default":"Azure Managed Grafana Notification"},"host":{"type":"string","required":true},"password":{"type":"string","required":true},"start_tls_policy":{"type":"string","required":true},"user":{"type":"string","required":true},"verification_skip_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_dashboard_grafana_managed_private_endpoint":{"block":{"attributes":{"grafana_id":{"type":"string","required":true},"group_ids":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_link_resource_id":{"type":"string","required":true},"private_link_resource_region":{"type":"string","optional":true},"private_link_service_url":{"type":"string","optional":true},"request_message":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory":{"block":{"attributes":{"customer_managed_key_id":{"type":"string","optional":true,"computed":true},"customer_managed_key_identity_id":{"type":"string","optional":true,"computed":true,"required_with":["customer_managed_key_id"]},"location":{"type":"string","required":true},"managed_virtual_network_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"public_network_enabled":{"type":"bool","optional":true,"default":true},"purview_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"github_configuration":{"nesting_mode":3,"block":{"attributes":{"account_name":{"type":"string","required":true},"branch_name":{"type":"string","required":true},"git_url":{"type":"string","optional":true},"publishing_enabled":{"type":"bool","optional":true,"default":true},"repository_name":{"type":"string","required":true},"root_folder":{"type":"string","required":true}}},"optional":true,"conflicts_with":["vsts_configuration"]},"global_parameter":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"vsts_configuration":{"nesting_mode":3,"block":{"attributes":{"account_name":{"type":"string","required":true},"branch_name":{"type":"string","required":true},"project_name":{"type":"string","required":true},"publishing_enabled":{"type":"bool","optional":true,"default":true},"repository_name":{"type":"string","required":true},"root_folder":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["github_configuration"]}}}},"azurerm_data_factory_credential_service_principal":{"block":{"attributes":{"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"service_principal_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}},"block_types":{"service_principal_key":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true},"secret_version":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_credential_user_managed_identity":{"block":{"attributes":{"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"identity_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_data_factory_custom_dataset":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"schema_json":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_properties_json":{"type":"string","required":true}},"block_types":{"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"required":true}}}},"azurerm_data_factory_customer_managed_key":{"block":{"attributes":{"customer_managed_key_id":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}}},"azurerm_data_factory_data_flow":{"block":{"attributes":{"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"name":{"type":"string","required":true},"script":{"type":"string","optional":true,"at_least_one_of":["script","script_lines"]},"script_lines":{"type":["list","string"],"optional":true,"at_least_one_of":["script","script_lines"]}},"block_types":{"sink":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"rejected_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"schema_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"required":true},"source":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"rejected_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"schema_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"required":true},"transformation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_azure_blob":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"path":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_azure_sql_table":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_id":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"schema":{"type":"string","optional":true},"table":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_binary":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"azure_blob_storage_location":{"nesting_mode":3,"block":{"attributes":{"container":{"type":"string","required":true},"dynamic_container_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","optional":true},"path":{"type":"string","optional":true}}},"optional":true,"conflicts_with":["http_server_location","sftp_server_location"]},"compression":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true},"http_server_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","required":true},"relative_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_blob_storage_location","sftp_server_location"]},"sftp_server_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_blob_storage_location","http_server_location"]}}}},"azurerm_data_factory_dataset_cosmosdb_sqlapi":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"collection_name":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_delimited_text":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"column_delimiter":{"type":"string","optional":true,"default":","},"compression_codec":{"type":"string","optional":true},"compression_level":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"encoding":{"type":"string","optional":true},"escape_character":{"type":"string","optional":true,"default":"\\"},"first_row_as_header":{"type":"bool","optional":true,"default":false},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"null_value":{"type":"string","optional":true,"default":""},"parameters":{"type":["map","string"],"optional":true},"quote_character":{"type":"string","optional":true,"default":"\""},"row_delimiter":{"type":"string","optional":true}},"block_types":{"azure_blob_fs_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_file_system_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"file_system":{"type":"string","optional":true},"filename":{"type":"string","optional":true},"path":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["http_server_location","azure_blob_storage_location","azure_blob_fs_location"]},"azure_blob_storage_location":{"nesting_mode":3,"block":{"attributes":{"container":{"type":"string","required":true},"dynamic_container_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","optional":true},"path":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["http_server_location","azure_blob_storage_location","azure_blob_fs_location"]},"http_server_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","required":true},"relative_url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["http_server_location","azure_blob_storage_location","azure_blob_fs_location"]},"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_http":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"relative_url":{"type":"string","optional":true},"request_body":{"type":"string","optional":true},"request_method":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_json":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"encoding":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"azure_blob_storage_location":{"nesting_mode":3,"block":{"attributes":{"container":{"type":"string","required":true},"dynamic_container_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","required":true}}},"optional":true,"conflicts_with":["http_server_location"]},"http_server_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","required":true},"relative_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_blob_storage_location"]},"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_mysql":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"table_name":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_parquet":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"compression_codec":{"type":"string","optional":true},"compression_level":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"azure_blob_fs_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_file_system_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"file_system":{"type":"string","optional":true},"filename":{"type":"string","optional":true},"path":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["azure_blob_fs_location","azure_blob_storage_location","http_server_location"]},"azure_blob_storage_location":{"nesting_mode":3,"block":{"attributes":{"container":{"type":"string","required":true},"dynamic_container_enabled":{"type":"bool","optional":true,"default":false},"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","optional":true},"path":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["azure_blob_fs_location","azure_blob_storage_location","http_server_location"]},"http_server_location":{"nesting_mode":3,"block":{"attributes":{"dynamic_filename_enabled":{"type":"bool","optional":true,"default":false},"dynamic_path_enabled":{"type":"bool","optional":true,"default":false},"filename":{"type":"string","required":true},"path":{"type":"string","optional":true},"relative_url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["azure_blob_fs_location","azure_blob_storage_location","http_server_location"]},"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_postgresql":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"table_name":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_snowflake":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"schema_name":{"type":"string","optional":true},"table_name":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"precision":{"type":"number","optional":true},"scale":{"type":"number","optional":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_dataset_sql_server_table":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"table_name":{"type":"string","optional":true}},"block_types":{"schema_column":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_factory_flowlet_data_flow":{"block":{"attributes":{"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"name":{"type":"string","required":true},"script":{"type":"string","optional":true,"at_least_one_of":["script","script_lines"]},"script_lines":{"type":["list","string"],"optional":true,"at_least_one_of":["script","script_lines"]}},"block_types":{"sink":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"rejected_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"schema_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"optional":true},"source":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"rejected_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"schema_linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"optional":true},"transformation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"flowlet":{"nesting_mode":3,"block":{"attributes":{"dataset_parameters":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"linked_service":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_data_factory_integration_runtime_azure":{"block":{"attributes":{"cleanup_enabled":{"type":"bool","optional":true,"default":true},"compute_type":{"type":"string","optional":true,"default":"General"},"core_count":{"type":"number","optional":true,"default":8},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"time_to_live_min":{"type":"number","optional":true,"default":0},"virtual_network_enabled":{"type":"bool","optional":true}}}},"azurerm_data_factory_integration_runtime_azure_ssis":{"block":{"attributes":{"credential_name":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"edition":{"type":"string","optional":true,"default":"Standard"},"license_type":{"type":"string","optional":true,"default":"LicenseIncluded"},"location":{"type":"string","required":true},"max_parallel_executions_per_node":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"node_size":{"type":"string","required":true},"number_of_nodes":{"type":"number","optional":true,"default":1}},"block_types":{"catalog_info":{"nesting_mode":3,"block":{"attributes":{"administrator_login":{"type":"string","optional":true},"administrator_password":{"type":"string","optional":true},"dual_standby_pair_name":{"type":"string","optional":true},"elastic_pool_name":{"type":"string","optional":true,"conflicts_with":["catalog_info.0.pricing_tier"]},"pricing_tier":{"type":"string","optional":true,"conflicts_with":["catalog_info.0.elastic_pool_name"]},"server_endpoint":{"type":"string","required":true}}},"optional":true},"copy_compute_scale":{"nesting_mode":3,"block":{"attributes":{"data_integration_unit":{"type":"number","optional":true},"time_to_live":{"type":"number","optional":true}}},"optional":true},"custom_setup_script":{"nesting_mode":3,"block":{"attributes":{"blob_container_uri":{"type":"string","required":true},"sas_token":{"type":"string","required":true}}},"optional":true},"express_custom_setup":{"nesting_mode":3,"block":{"attributes":{"environment":{"type":["map","string"],"optional":true,"at_least_one_of":["express_custom_setup.0.environment","express_custom_setup.0.powershell_version","express_custom_setup.0.component","express_custom_setup.0.command_key"]},"powershell_version":{"type":"string","optional":true,"at_least_one_of":["express_custom_setup.0.environment","express_custom_setup.0.powershell_version","express_custom_setup.0.component","express_custom_setup.0.command_key"]}},"block_types":{"command_key":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"target_name":{"type":"string","required":true},"user_name":{"type":"string","required":true}},"block_types":{"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"secret_name":{"type":"string","required":true},"secret_version":{"type":"string","optional":true}}},"optional":true}}},"optional":true,"at_least_one_of":["express_custom_setup.0.environment","express_custom_setup.0.powershell_version","express_custom_setup.0.component","express_custom_setup.0.command_key"]},"component":{"nesting_mode":3,"block":{"attributes":{"license":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"key_vault_license":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"secret_name":{"type":"string","required":true},"secret_version":{"type":"string","optional":true}}},"optional":true}}},"optional":true,"at_least_one_of":["express_custom_setup.0.environment","express_custom_setup.0.powershell_version","express_custom_setup.0.component","express_custom_setup.0.command_key"]}}},"optional":true},"express_vnet_integration":{"nesting_mode":3,"block":{"attributes":{"subnet_id":{"type":"string","required":true}}},"optional":true},"package_store":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true},"pipeline_external_compute_scale":{"nesting_mode":3,"block":{"attributes":{"number_of_external_nodes":{"type":"number","optional":true},"number_of_pipeline_nodes":{"type":"number","optional":true},"time_to_live":{"type":"number","optional":true}}},"optional":true},"proxy":{"nesting_mode":3,"block":{"attributes":{"path":{"type":"string","optional":true},"self_hosted_integration_runtime_name":{"type":"string","required":true},"staging_storage_linked_service_name":{"type":"string","required":true}}},"optional":true},"vnet_integration":{"nesting_mode":3,"block":{"attributes":{"public_ips":{"type":["list","string"],"optional":true},"subnet_id":{"type":"string","optional":true,"exactly_one_of":["vnet_integration.0.vnet_id","vnet_integration.0.subnet_id"]},"subnet_name":{"type":"string","optional":true,"required_with":["vnet_integration.0.vnet_id"]},"vnet_id":{"type":"string","optional":true,"exactly_one_of":["vnet_integration.0.vnet_id","vnet_integration.0.subnet_id"]}}},"optional":true}}}},"azurerm_data_factory_integration_runtime_self_hosted":{"block":{"attributes":{"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"primary_authorization_key":{"type":"string","computed":true},"secondary_authorization_key":{"type":"string","computed":true},"self_contained_interactive_authoring_enabled":{"type":"bool","optional":true}},"block_types":{"rbac_authorization":{"nesting_mode":4,"block":{"attributes":{"resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_custom_service":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"type_properties_json":{"type":"string","required":true}},"block_types":{"integration_runtime":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_azure_blob_storage":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","optional":true,"exactly_one_of":["connection_string","connection_string_insecure","sas_uri","service_endpoint"]},"connection_string_insecure":{"type":"string","optional":true,"exactly_one_of":["connection_string","connection_string_insecure","sas_uri","service_endpoint"]},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"sas_uri":{"type":"string","optional":true,"exactly_one_of":["connection_string","connection_string_insecure","sas_uri","service_endpoint"]},"service_endpoint":{"type":"string","optional":true,"exactly_one_of":["connection_string","connection_string_insecure","sas_uri","service_endpoint"]},"service_principal_id":{"type":"string","optional":true,"conflicts_with":["use_managed_identity"]},"service_principal_key":{"type":"string","optional":true},"storage_kind":{"type":"string","optional":true},"tenant_id":{"type":"string","optional":true},"use_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["service_principal_id"]}},"block_types":{"key_vault_sas_token":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true},"service_principal_linked_key_vault_key":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_azure_databricks":{"block":{"attributes":{"access_token":{"type":"string","optional":true,"exactly_one_of":["access_token","msi_work_space_resource_id","key_vault_password"]},"adb_domain":{"type":"string","required":true},"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"existing_cluster_id":{"type":"string","optional":true,"exactly_one_of":["existing_cluster_id","new_cluster_config","instance_pool"]},"integration_runtime_name":{"type":"string","optional":true},"msi_work_space_resource_id":{"type":"string","optional":true,"exactly_one_of":["access_token","msi_work_space_resource_id","key_vault_password"]},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"instance_pool":{"nesting_mode":3,"block":{"attributes":{"cluster_version":{"type":"string","required":true},"instance_pool_id":{"type":"string","required":true},"max_number_of_workers":{"type":"number","optional":true},"min_number_of_workers":{"type":"number","optional":true,"default":1}}},"optional":true,"exactly_one_of":["existing_cluster_id","new_cluster_config","instance_pool"]},"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["access_token","msi_work_space_resource_id","key_vault_password"]},"new_cluster_config":{"nesting_mode":3,"block":{"attributes":{"cluster_version":{"type":"string","required":true},"custom_tags":{"type":["map","string"],"optional":true},"driver_node_type":{"type":"string","optional":true},"init_scripts":{"type":["list","string"],"optional":true},"log_destination":{"type":"string","optional":true},"max_number_of_workers":{"type":"number","optional":true},"min_number_of_workers":{"type":"number","optional":true,"default":1},"node_type":{"type":"string","required":true},"spark_config":{"type":["map","string"],"optional":true},"spark_environment_variables":{"type":["map","string"],"optional":true}}},"optional":true,"exactly_one_of":["existing_cluster_id","new_cluster_config","instance_pool"]}}}},"azurerm_data_factory_linked_service_azure_file_storage":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"file_share":{"type":"string","optional":true},"host":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"password":{"type":"string","optional":true},"user_id":{"type":"string","optional":true}},"block_types":{"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_azure_function":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"key":{"type":"string","optional":true,"exactly_one_of":["key","key_vault_key"]},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"url":{"type":"string","required":true}},"block_types":{"key_vault_key":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["key","key_vault_key"]}}}},"azurerm_data_factory_linked_service_azure_search":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"encrypted_credential":{"type":"string","computed":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"search_service_key":{"type":"string","required":true},"url":{"type":"string","required":true}}}},"azurerm_data_factory_linked_service_azure_sql_database":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","optional":true,"exactly_one_of":["connection_string","key_vault_connection_string"]},"credential_name":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"service_principal_id":{"type":"string","optional":true,"conflicts_with":["use_managed_identity"],"required_with":["service_principal_key"]},"service_principal_key":{"type":"string","optional":true,"required_with":["service_principal_id"]},"tenant_id":{"type":"string","optional":true},"use_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["service_principal_id"]}},"block_types":{"key_vault_connection_string":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["connection_string","key_vault_connection_string"]},"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_azure_table_storage":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_linked_service_cosmosdb":{"block":{"attributes":{"account_endpoint":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"account_key":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","optional":true,"conflicts_with":["account_endpoint","account_key"]},"data_factory_id":{"type":"string","required":true},"database":{"type":"string","optional":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_linked_service_cosmosdb_mongoapi":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","optional":true},"data_factory_id":{"type":"string","required":true},"database":{"type":"string","optional":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"server_version_is_32_or_higher":{"type":"bool","optional":true,"default":false}}}},"azurerm_data_factory_linked_service_data_lake_storage_gen2":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"service_principal_id":{"type":"string","optional":true,"conflicts_with":["storage_account_key","use_managed_identity"],"at_least_one_of":["service_principal_key","service_principal_id","tenant","storage_account_key","use_managed_identity"],"required_with":["service_principal_key","tenant"]},"service_principal_key":{"type":"string","optional":true,"conflicts_with":["storage_account_key","use_managed_identity"],"at_least_one_of":["service_principal_key","service_principal_id","tenant","storage_account_key","use_managed_identity"],"required_with":["service_principal_id","tenant"]},"storage_account_key":{"type":"string","optional":true,"conflicts_with":["service_principal_id","service_principal_key","use_managed_identity","tenant"],"at_least_one_of":["service_principal_key","service_principal_id","tenant","storage_account_key","use_managed_identity"]},"tenant":{"type":"string","optional":true,"conflicts_with":["storage_account_key","use_managed_identity"],"at_least_one_of":["service_principal_key","service_principal_id","tenant","storage_account_key","use_managed_identity"],"required_with":["service_principal_id","service_principal_key"]},"url":{"type":"string","required":true},"use_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["service_principal_key","service_principal_id","storage_account_key","tenant"],"at_least_one_of":["service_principal_key","service_principal_id","tenant","storage_account_key","use_managed_identity"]}}}},"azurerm_data_factory_linked_service_key_vault":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"key_vault_id":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_linked_service_kusto":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"kusto_database_name":{"type":"string","required":true},"kusto_endpoint":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"service_principal_id":{"type":"string","optional":true,"exactly_one_of":["service_principal_id","use_managed_identity"],"required_with":["service_principal_key"]},"service_principal_key":{"type":"string","optional":true,"required_with":["service_principal_id"]},"tenant":{"type":"string","optional":true,"required_with":["service_principal_id"]},"use_managed_identity":{"type":"bool","optional":true,"default":false,"exactly_one_of":["service_principal_id","use_managed_identity"]}}}},"azurerm_data_factory_linked_service_mysql":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_linked_service_odata":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"url":{"type":"string","required":true}},"block_types":{"basic_authentication":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_odbc":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"basic_authentication":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_postgresql":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_linked_service_sftp":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"authentication_type":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"host":{"type":"string","required":true},"host_key_fingerprint":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"password":{"type":"string","optional":true,"conflicts_with":["key_vault_password"]},"port":{"type":"number","required":true},"private_key_content_base64":{"type":"string","optional":true,"conflicts_with":["key_vault_private_key_content_base64","private_key_path"]},"private_key_passphrase":{"type":"string","optional":true,"conflicts_with":["key_vault_private_key_passphrase"]},"private_key_path":{"type":"string","optional":true,"conflicts_with":["key_vault_private_key_content_base64","private_key_content_base64"]},"skip_host_key_validation":{"type":"bool","optional":true},"username":{"type":"string","required":true}},"block_types":{"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["password"]},"key_vault_private_key_content_base64":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["private_key_content_base64","private_key_path"]},"key_vault_private_key_passphrase":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["private_key_passphrase"]}}}},"azurerm_data_factory_linked_service_snowflake":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_sql_server":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","optional":true,"exactly_one_of":["connection_string","key_vault_connection_string"]},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"user_name":{"type":"string","optional":true}},"block_types":{"key_vault_connection_string":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["connection_string","key_vault_connection_string"]},"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_synapse":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"connection_string":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}},"block_types":{"key_vault_password":{"nesting_mode":3,"block":{"attributes":{"linked_service_name":{"type":"string","required":true},"secret_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_factory_linked_service_web":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"authentication_type":{"type":"string","required":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"integration_runtime_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"password":{"type":"string","optional":true},"url":{"type":"string","required":true},"username":{"type":"string","optional":true}}}},"azurerm_data_factory_managed_private_endpoint":{"block":{"attributes":{"data_factory_id":{"type":"string","required":true},"fqdns":{"type":["list","string"],"optional":true,"computed":true},"name":{"type":"string","required":true},"subresource_name":{"type":"string","optional":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_data_factory_pipeline":{"block":{"attributes":{"activities_json":{"type":"string","optional":true},"annotations":{"type":["list","string"],"optional":true},"concurrency":{"type":"number","optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"folder":{"type":"string","optional":true},"moniter_metrics_after_duration":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"variables":{"type":["map","string"],"optional":true}}}},"azurerm_data_factory_trigger_blob_event":{"block":{"attributes":{"activated":{"type":"bool","optional":true,"default":true},"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"blob_path_begins_with":{"type":"string","optional":true,"at_least_one_of":["blob_path_begins_with","blob_path_ends_with"]},"blob_path_ends_with":{"type":"string","optional":true,"at_least_one_of":["blob_path_begins_with","blob_path_ends_with"]},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"events":{"type":["set","string"],"required":true},"ignore_empty_blobs":{"type":"bool","optional":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}},"block_types":{"pipeline":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"required":true}}}},"azurerm_data_factory_trigger_custom_event":{"block":{"attributes":{"activated":{"type":"bool","optional":true,"default":true},"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"eventgrid_topic_id":{"type":"string","required":true},"events":{"type":["set","string"],"required":true},"name":{"type":"string","required":true},"subject_begins_with":{"type":"string","optional":true},"subject_ends_with":{"type":"string","optional":true}},"block_types":{"pipeline":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"required":true}}}},"azurerm_data_factory_trigger_schedule":{"block":{"attributes":{"activated":{"type":"bool","optional":true,"default":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"end_time":{"type":"string","optional":true},"frequency":{"type":"string","optional":true,"default":"Minute"},"interval":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"pipeline_name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["pipeline","pipeline_name"]},"pipeline_parameters":{"type":["map","string"],"optional":true,"computed":true,"conflicts_with":["pipeline"]},"start_time":{"type":"string","optional":true,"computed":true},"time_zone":{"type":"string","optional":true}},"block_types":{"pipeline":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true,"computed":true,"conflicts_with":["pipeline_parameters"],"exactly_one_of":["pipeline","pipeline_name"]},"schedule":{"nesting_mode":3,"block":{"attributes":{"days_of_month":{"type":["list","number"],"optional":true},"days_of_week":{"type":["list","string"],"optional":true},"hours":{"type":["list","number"],"optional":true},"minutes":{"type":["list","number"],"optional":true}},"block_types":{"monthly":{"nesting_mode":3,"block":{"attributes":{"week":{"type":"number","optional":true},"weekday":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_data_factory_trigger_tumbling_window":{"block":{"attributes":{"activated":{"type":"bool","optional":true,"default":true},"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"data_factory_id":{"type":"string","required":true},"delay":{"type":"string","optional":true},"description":{"type":"string","optional":true},"end_time":{"type":"string","optional":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","required":true},"max_concurrency":{"type":"number","optional":true,"default":50},"name":{"type":"string","required":true},"start_time":{"type":"string","required":true}},"block_types":{"pipeline":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"required":true},"retry":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"number","optional":true,"default":30}}},"optional":true},"trigger_dependency":{"nesting_mode":4,"block":{"attributes":{"offset":{"type":"string","optional":true},"size":{"type":"string","optional":true},"trigger_name":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_data_protection_backup_instance_blob_storage":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"protection_state":{"type":"string","computed":true},"storage_account_container_names":{"type":["list","string"],"optional":true},"storage_account_id":{"type":"string","required":true},"vault_id":{"type":"string","required":true}}}},"azurerm_data_protection_backup_instance_disk":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"disk_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"protection_state":{"type":"string","computed":true},"snapshot_resource_group_name":{"type":"string","required":true},"snapshot_subscription_id":{"type":"string","optional":true},"vault_id":{"type":"string","required":true}}}},"azurerm_data_protection_backup_instance_kubernetes_cluster":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"kubernetes_cluster_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"protection_state":{"type":"string","computed":true},"snapshot_resource_group_name":{"type":"string","required":true},"vault_id":{"type":"string","required":true}},"block_types":{"backup_datasource_parameters":{"nesting_mode":3,"block":{"attributes":{"cluster_scoped_resources_enabled":{"type":"bool","optional":true,"default":false},"excluded_namespaces":{"type":["list","string"],"optional":true},"excluded_resource_types":{"type":["list","string"],"optional":true},"included_namespaces":{"type":["list","string"],"optional":true},"included_resource_types":{"type":["list","string"],"optional":true},"label_selectors":{"type":["list","string"],"optional":true},"volume_snapshot_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_data_protection_backup_instance_mysql_flexible_server":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"protection_state":{"type":"string","computed":true},"server_id":{"type":"string","required":true},"vault_id":{"type":"string","required":true}}}},"azurerm_data_protection_backup_instance_postgresql":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"database_credential_key_vault_secret_id":{"type":"string","optional":true},"database_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"protection_state":{"type":"string","computed":true},"vault_id":{"type":"string","required":true}}}},"azurerm_data_protection_backup_instance_postgresql_flexible_server":{"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"protection_state":{"type":"string","computed":true},"server_id":{"type":"string","required":true},"vault_id":{"type":"string","required":true}}}},"azurerm_data_protection_backup_policy_blob_storage":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"operational_default_retention_duration":{"type":"string","optional":true,"at_least_one_of":["operational_default_retention_duration","vault_default_retention_duration"]},"time_zone":{"type":"string","optional":true},"vault_default_retention_duration":{"type":"string","optional":true,"at_least_one_of":["operational_default_retention_duration","vault_default_retention_duration"],"required_with":["backup_repeating_time_intervals"]},"vault_id":{"type":"string","required":true}},"block_types":{"retention_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true},"days_of_month":{"type":["set","number"],"optional":true},"days_of_week":{"type":["set","string"],"optional":true},"months_of_year":{"type":["set","string"],"optional":true},"scheduled_backup_times":{"type":["set","string"],"optional":true},"weeks_of_month":{"type":["set","string"],"optional":true}}},"required":true},"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"optional":true,"required_with":["vault_default_retention_duration"]}}}},"azurerm_data_protection_backup_policy_disk":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"required":true},"default_retention_duration":{"type":"string","required":true},"name":{"type":"string","required":true},"time_zone":{"type":"string","optional":true},"vault_id":{"type":"string","required":true}},"block_types":{"retention_rule":{"nesting_mode":3,"block":{"attributes":{"duration":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true}}},"required":true}}},"optional":true}}}},"azurerm_data_protection_backup_policy_kubernetes_cluster":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"time_zone":{"type":"string","optional":true},"vault_name":{"type":"string","required":true}},"block_types":{"default_retention_rule":{"nesting_mode":3,"block":{"block_types":{"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"required":true},"retention_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true},"days_of_week":{"type":["set","string"],"optional":true},"months_of_year":{"type":["set","string"],"optional":true},"scheduled_backup_times":{"type":["set","string"],"optional":true},"weeks_of_month":{"type":["set","string"],"optional":true}}},"required":true},"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_data_protection_backup_policy_mysql_flexible_server":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"time_zone":{"type":"string","optional":true},"vault_id":{"type":"string","required":true}},"block_types":{"default_retention_rule":{"nesting_mode":3,"block":{"block_types":{"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"required":true},"retention_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true},"days_of_week":{"type":["set","string"],"optional":true},"months_of_year":{"type":["set","string"],"optional":true},"scheduled_backup_times":{"type":["set","string"],"optional":true},"weeks_of_month":{"type":["set","string"],"optional":true}}},"required":true},"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_data_protection_backup_policy_postgresql":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"required":true},"default_retention_duration":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"time_zone":{"type":"string","optional":true},"vault_name":{"type":"string","required":true}},"block_types":{"retention_rule":{"nesting_mode":3,"block":{"attributes":{"duration":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true},"days_of_week":{"type":["set","string"],"optional":true},"months_of_year":{"type":["set","string"],"optional":true},"scheduled_backup_times":{"type":["set","string"],"optional":true},"weeks_of_month":{"type":["set","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_data_protection_backup_policy_postgresql_flexible_server":{"block":{"attributes":{"backup_repeating_time_intervals":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"time_zone":{"type":"string","optional":true},"vault_id":{"type":"string","required":true}},"block_types":{"default_retention_rule":{"nesting_mode":3,"block":{"block_types":{"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"required":true},"retention_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"absolute_criteria":{"type":"string","optional":true},"days_of_week":{"type":["set","string"],"optional":true},"months_of_year":{"type":["set","string"],"optional":true},"scheduled_backup_times":{"type":["set","string"],"optional":true},"weeks_of_month":{"type":["set","string"],"optional":true}}},"required":true},"life_cycle":{"nesting_mode":3,"block":{"attributes":{"data_store_type":{"type":"string","required":true},"duration":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_data_protection_backup_vault":{"block":{"attributes":{"cross_region_restore_enabled":{"type":"bool","optional":true},"datastore_type":{"type":"string","required":true},"immutability":{"type":"string","optional":true,"default":"Disabled"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"redundancy":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"retention_duration_in_days":{"type":"number","optional":true,"default":14},"soft_delete":{"type":"string","optional":true,"default":"On"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_protection_backup_vault_customer_managed_key":{"block":{"attributes":{"data_protection_backup_vault_id":{"type":"string","required":true},"key_vault_key_id":{"type":"string","required":true}}}},"azurerm_data_protection_resource_guard":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"vault_critical_operation_exclusion_list":{"type":["list","string"],"optional":true}}}},"azurerm_data_share":{"block":{"attributes":{"account_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"kind":{"type":"string","required":true},"name":{"type":"string","required":true},"terms":{"type":"string","optional":true}},"block_types":{"snapshot_schedule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"recurrence":{"type":"string","required":true},"start_time":{"type":"string","required":true}}},"optional":true}}}},"azurerm_data_share_account":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_data_share_dataset_blob_storage":{"block":{"attributes":{"container_name":{"type":"string","required":true},"data_share_id":{"type":"string","required":true},"display_name":{"type":"string","computed":true},"file_path":{"type":"string","optional":true,"conflicts_with":["folder_path"]},"folder_path":{"type":"string","optional":true,"conflicts_with":["file_path"]},"name":{"type":"string","required":true}},"block_types":{"storage_account":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_data_share_dataset_data_lake_gen2":{"block":{"attributes":{"display_name":{"type":"string","computed":true},"file_path":{"type":"string","optional":true,"conflicts_with":["folder_path"]},"file_system_name":{"type":"string","required":true},"folder_path":{"type":"string","optional":true,"conflicts_with":["file_path"]},"name":{"type":"string","required":true},"share_id":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}}},"azurerm_data_share_dataset_kusto_cluster":{"block":{"attributes":{"display_name":{"type":"string","computed":true},"kusto_cluster_id":{"type":"string","required":true},"kusto_cluster_location":{"type":"string","computed":true},"name":{"type":"string","required":true},"share_id":{"type":"string","required":true}}}},"azurerm_data_share_dataset_kusto_database":{"block":{"attributes":{"display_name":{"type":"string","computed":true},"kusto_cluster_location":{"type":"string","computed":true},"kusto_database_id":{"type":"string","required":true},"name":{"type":"string","required":true},"share_id":{"type":"string","required":true}}}},"azurerm_database_migration_project":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"service_name":{"type":"string","required":true},"source_platform":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_platform":{"type":"string","required":true}}}},"azurerm_database_migration_service":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_databox_edge_device":{"block":{"attributes":{"device_properties":{"type":["list",["object",{"capacity":"number","configured_role_types":["list","string"],"culture":"string","hcs_version":"string","model":"string","node_count":"number","serial_number":"string","software_version":"string","status":"string","time_zone":"string","type":"string"}]],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_databricks_access_connector":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_databricks_virtual_network_peering":{"block":{"attributes":{"address_space_prefixes":{"type":["list","string"],"computed":true},"allow_forwarded_traffic":{"type":"bool","optional":true,"default":false},"allow_gateway_transit":{"type":"bool","optional":true,"default":false},"allow_virtual_network_access":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"remote_address_space_prefixes":{"type":["list","string"],"required":true},"remote_virtual_network_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"use_remote_gateways":{"type":"bool","optional":true,"default":false},"virtual_network_id":{"type":"string","computed":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_databricks_workspace":{"block":{"attributes":{"access_connector_id":{"type":"string","optional":true,"required_with":["default_storage_firewall_enabled"]},"customer_managed_key_enabled":{"type":"bool","optional":true,"default":false},"default_storage_firewall_enabled":{"type":"bool","optional":true,"required_with":["access_connector_id"]},"disk_encryption_set_id":{"type":"string","computed":true},"infrastructure_encryption_enabled":{"type":"bool","optional":true,"default":false},"load_balancer_backend_address_pool_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"managed_disk_cmk_key_vault_id":{"type":"string","optional":true},"managed_disk_cmk_key_vault_key_id":{"type":"string","optional":true},"managed_disk_cmk_rotation_to_latest_version_enabled":{"type":"bool","optional":true,"required_with":["managed_disk_cmk_key_vault_key_id"]},"managed_disk_identity":{"type":["list",["object",{"principal_id":"string","tenant_id":"string","type":"string"}]],"computed":true},"managed_resource_group_id":{"type":"string","computed":true},"managed_resource_group_name":{"type":"string","optional":true,"computed":true},"managed_services_cmk_key_vault_id":{"type":"string","optional":true},"managed_services_cmk_key_vault_key_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_security_group_rules_required":{"type":"string","optional":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"storage_account_identity":{"type":["list",["object",{"principal_id":"string","tenant_id":"string","type":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","computed":true},"workspace_url":{"type":"string","computed":true}},"block_types":{"custom_parameters":{"nesting_mode":3,"block":{"attributes":{"machine_learning_workspace_id":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"nat_gateway_name":{"type":"string","optional":true,"computed":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"no_public_ip":{"type":"bool","optional":true,"default":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"private_subnet_name":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"private_subnet_network_security_group_association_id":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"public_ip_name":{"type":"string","optional":true,"computed":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"public_subnet_name":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"public_subnet_network_security_group_association_id":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"storage_account_name":{"type":"string","optional":true,"computed":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"storage_account_sku_name":{"type":"string","optional":true,"computed":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"virtual_network_id":{"type":"string","optional":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]},"vnet_address_prefix":{"type":"string","optional":true,"computed":true,"at_least_one_of":["custom_parameters.0.machine_learning_workspace_id","custom_parameters.0.no_public_ip","custom_parameters.0.public_subnet_name","custom_parameters.0.private_subnet_name","custom_parameters.0.virtual_network_id","custom_parameters.0.public_subnet_network_security_group_association_id","custom_parameters.0.private_subnet_network_security_group_association_id","custom_parameters.0.nat_gateway_name","custom_parameters.0.public_ip_name","custom_parameters.0.storage_account_name","custom_parameters.0.storage_account_sku_name","custom_parameters.0.vnet_address_prefix"]}}},"optional":true,"computed":true},"enhanced_security_compliance":{"nesting_mode":3,"block":{"attributes":{"automatic_cluster_update_enabled":{"type":"bool","optional":true,"default":false},"compliance_security_profile_enabled":{"type":"bool","optional":true,"default":false},"compliance_security_profile_standards":{"type":["set","string"],"optional":true},"enhanced_security_monitoring_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_databricks_workspace_customer_managed_key":{"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_databricks_workspace_root_dbfs_customer_managed_key":{"block":{"attributes":{"key_vault_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_datadog_monitor":{"block":{"attributes":{"location":{"type":"string","required":true},"marketplace_subscription_status":{"type":"string","computed":true},"monitoring_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"datadog_organization":{"nesting_mode":3,"block":{"attributes":{"api_key":{"type":"string","required":true},"application_key":{"type":"string","required":true},"enterprise_app_id":{"type":"string","optional":true},"id":{"type":"string","computed":true},"linking_auth_code":{"type":"string","optional":true},"linking_client_id":{"type":"string","optional":true},"name":{"type":"string","computed":true},"redirect_uri":{"type":"string","optional":true}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"user":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","required":true},"name":{"type":"string","required":true},"phone_number":{"type":"string","optional":true}}},"required":true}}}},"azurerm_datadog_monitor_sso_configuration":{"block":{"attributes":{"datadog_monitor_id":{"type":"string","required":true},"enterprise_application_id":{"type":"string","required":true},"login_url":{"type":"string","computed":true},"name":{"type":"string","optional":true,"default":"default"},"single_sign_on":{"type":"string","optional":true,"computed":true},"single_sign_on_enabled":{"type":"string","optional":true,"computed":true,"exactly_one_of":["single_sign_on","single_sign_on_enabled"]}}}},"azurerm_datadog_monitor_tag_rule":{"block":{"attributes":{"datadog_monitor_id":{"type":"string","required":true},"name":{"type":"string","optional":true,"default":"default"}},"block_types":{"log":{"nesting_mode":3,"block":{"attributes":{"aad_log_enabled":{"type":"bool","optional":true},"resource_log_enabled":{"type":"bool","optional":true},"subscription_log_enabled":{"type":"bool","optional":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"metric":{"nesting_mode":3,"block":{"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_dedicated_hardware_security_module":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"stamp_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"management_network_profile":{"nesting_mode":3,"block":{"attributes":{"network_interface_private_ip_addresses":{"type":["set","string"],"required":true},"subnet_id":{"type":"string","required":true}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"network_interface_private_ip_addresses":{"type":["set","string"],"required":true},"subnet_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_dedicated_host":{"block":{"attributes":{"auto_replace_on_failure":{"type":"bool","optional":true,"default":true},"dedicated_host_group_id":{"type":"string","required":true},"license_type":{"type":"string","optional":true,"default":"None"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"platform_fault_domain":{"type":"number","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_dedicated_host_group":{"block":{"attributes":{"automatic_placement_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"platform_fault_domain_count":{"type":"number","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone":{"type":"string","optional":true}}}},"azurerm_dev_center":{"block":{"attributes":{"dev_center_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"project_catalog_item_sync_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dev_center_attached_network":{"block":{"attributes":{"dev_center_id":{"type":"string","required":true},"name":{"type":"string","required":true},"network_connection_id":{"type":"string","required":true}}}},"azurerm_dev_center_catalog":{"block":{"attributes":{"dev_center_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"catalog_adogit":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","required":true},"key_vault_key_url":{"type":"string","required":true},"path":{"type":"string","required":true},"uri":{"type":"string","required":true}}},"optional":true},"catalog_github":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","required":true},"key_vault_key_url":{"type":"string","required":true},"path":{"type":"string","required":true},"uri":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dev_center_dev_box_definition":{"block":{"attributes":{"dev_center_id":{"type":"string","required":true},"hibernate_support_enabled":{"type":"bool","optional":true,"default":false},"image_reference_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_dev_center_environment_type":{"block":{"attributes":{"dev_center_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_dev_center_gallery":{"block":{"attributes":{"dev_center_id":{"type":"string","required":true},"name":{"type":"string","required":true},"shared_gallery_id":{"type":"string","required":true}}}},"azurerm_dev_center_network_connection":{"block":{"attributes":{"domain_join_type":{"type":"string","required":true},"domain_name":{"type":"string","optional":true},"domain_password":{"type":"string","optional":true},"domain_username":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"organization_unit":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_dev_center_project":{"block":{"attributes":{"description":{"type":"string","optional":true},"dev_center_id":{"type":"string","required":true},"dev_center_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"maximum_dev_boxes_per_user":{"type":"number","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dev_center_project_environment_type":{"block":{"attributes":{"creator_role_assignment_roles":{"type":["set","string"],"optional":true},"deployment_target_id":{"type":"string","required":true},"dev_center_project_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true},"user_role_assignment":{"nesting_mode":4,"block":{"attributes":{"roles":{"type":["set","string"],"required":true},"user_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dev_center_project_pool":{"block":{"attributes":{"dev_box_definition_name":{"type":"string","required":true},"dev_center_attached_network_name":{"type":"string","required":true},"dev_center_project_id":{"type":"string","required":true},"local_administrator_enabled":{"type":"bool","required":true},"location":{"type":"string","required":true},"managed_virtual_network_regions":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"single_sign_on_enabled":{"type":"bool","optional":true,"default":false},"stop_on_disconnect_grace_period_minutes":{"type":"number","optional":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_dev_test_global_vm_shutdown_schedule":{"block":{"attributes":{"daily_recurrence_time":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"timezone":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"notification_settings":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","optional":true},"enabled":{"type":"bool","required":true},"time_in_minutes":{"type":"number","optional":true,"default":30},"webhook_url":{"type":"string","optional":true}}},"required":true}}}},"azurerm_dev_test_lab":{"block":{"attributes":{"artifacts_storage_account_id":{"type":"string","computed":true},"default_premium_storage_account_id":{"type":"string","computed":true},"default_storage_account_id":{"type":"string","computed":true},"key_vault_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"premium_data_disk_storage_account_id":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"unique_identifier":{"type":"string","computed":true}}}},"azurerm_dev_test_linux_virtual_machine":{"block":{"attributes":{"allow_claim":{"type":"bool","optional":true,"default":true},"disallow_public_ip_address":{"type":"bool","optional":true},"fqdn":{"type":"string","computed":true},"lab_name":{"type":"string","required":true},"lab_subnet_name":{"type":"string","required":true},"lab_virtual_network_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"notes":{"type":"string","optional":true},"password":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"size":{"type":"string","required":true},"ssh_key":{"type":"string","optional":true},"storage_type":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"unique_identifier":{"type":"string","computed":true},"username":{"type":"string","required":true}},"block_types":{"gallery_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"inbound_nat_rule":{"nesting_mode":4,"block":{"attributes":{"backend_port":{"type":"number","required":true},"frontend_port":{"type":"number","computed":true},"protocol":{"type":"string","required":true}}},"optional":true}}}},"azurerm_dev_test_policy":{"block":{"attributes":{"description":{"type":"string","optional":true},"evaluator_type":{"type":"string","required":true},"fact_data":{"type":"string","optional":true},"lab_name":{"type":"string","required":true},"name":{"type":"string","required":true},"policy_set_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"threshold":{"type":"string","required":true}}}},"azurerm_dev_test_schedule":{"block":{"attributes":{"lab_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"status":{"type":"string","optional":true,"default":"Disabled"},"tags":{"type":["map","string"],"optional":true},"task_type":{"type":"string","required":true},"time_zone_id":{"type":"string","required":true}},"block_types":{"daily_recurrence":{"nesting_mode":3,"block":{"attributes":{"time":{"type":"string","required":true}}},"optional":true},"hourly_recurrence":{"nesting_mode":3,"block":{"attributes":{"minute":{"type":"number","required":true}}},"optional":true},"notification_settings":{"nesting_mode":3,"block":{"attributes":{"status":{"type":"string","optional":true,"default":"Disabled"},"time_in_minutes":{"type":"number","optional":true},"webhook_url":{"type":"string","optional":true}}},"required":true},"weekly_recurrence":{"nesting_mode":3,"block":{"attributes":{"time":{"type":"string","required":true},"week_days":{"type":["list","string"],"optional":true}}},"optional":true}}}},"azurerm_dev_test_virtual_network":{"block":{"attributes":{"description":{"type":"string","optional":true},"lab_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"unique_identifier":{"type":"string","computed":true}},"block_types":{"subnet":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","computed":true},"use_in_virtual_machine_creation":{"type":"string","optional":true,"default":"Allow"},"use_public_ip_address":{"type":"string","optional":true,"default":"Allow"}},"block_types":{"shared_public_ip_address":{"nesting_mode":3,"block":{"block_types":{"allowed_ports":{"nesting_mode":3,"block":{"attributes":{"backend_port":{"type":"number","optional":true},"transport_protocol":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_dev_test_windows_virtual_machine":{"block":{"attributes":{"allow_claim":{"type":"bool","optional":true,"default":true},"disallow_public_ip_address":{"type":"bool","optional":true},"fqdn":{"type":"string","computed":true},"lab_name":{"type":"string","required":true},"lab_subnet_name":{"type":"string","required":true},"lab_virtual_network_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"notes":{"type":"string","optional":true},"password":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"size":{"type":"string","required":true},"storage_type":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"unique_identifier":{"type":"string","computed":true},"username":{"type":"string","required":true}},"block_types":{"gallery_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"inbound_nat_rule":{"nesting_mode":4,"block":{"attributes":{"backend_port":{"type":"number","required":true},"frontend_port":{"type":"number","computed":true},"protocol":{"type":"string","required":true}}},"optional":true}}}},"azurerm_digital_twins_endpoint_eventgrid":{"block":{"attributes":{"dead_letter_storage_secret":{"type":"string","optional":true},"digital_twins_id":{"type":"string","required":true},"eventgrid_topic_endpoint":{"type":"string","required":true},"eventgrid_topic_primary_access_key":{"type":"string","required":true},"eventgrid_topic_secondary_access_key":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_digital_twins_endpoint_eventhub":{"block":{"attributes":{"dead_letter_storage_secret":{"type":"string","optional":true},"digital_twins_id":{"type":"string","required":true},"eventhub_primary_connection_string":{"type":"string","required":true},"eventhub_secondary_connection_string":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_digital_twins_endpoint_servicebus":{"block":{"attributes":{"dead_letter_storage_secret":{"type":"string","optional":true},"digital_twins_id":{"type":"string","required":true},"name":{"type":"string","required":true},"servicebus_primary_connection_string":{"type":"string","required":true},"servicebus_secondary_connection_string":{"type":"string","required":true}}}},"azurerm_digital_twins_instance":{"block":{"attributes":{"host_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_digital_twins_time_series_database_connection":{"block":{"attributes":{"digital_twins_id":{"type":"string","required":true},"eventhub_consumer_group_name":{"type":"string","optional":true,"default":"$Default"},"eventhub_name":{"type":"string","required":true},"eventhub_namespace_endpoint_uri":{"type":"string","required":true},"eventhub_namespace_id":{"type":"string","required":true},"kusto_cluster_id":{"type":"string","required":true},"kusto_cluster_uri":{"type":"string","required":true},"kusto_database_name":{"type":"string","required":true},"kusto_table_name":{"type":"string","optional":true,"default":"AdtPropertyEvents"},"name":{"type":"string","required":true}}}},"azurerm_disk_access":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_disk_encryption_set":{"block":{"attributes":{"auto_key_rotation_enabled":{"type":"bool","optional":true,"default":false},"encryption_type":{"type":"string","optional":true,"default":"EncryptionAtRestWithCustomerKey"},"federated_client_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_key_id"]},"key_vault_key_url":{"type":"string","computed":true},"location":{"type":"string","required":true},"managed_hsm_key_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_key_id"]},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_dns_a_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"optional":true,"conflicts_with":["target_resource_id"]},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_resource_id":{"type":"string","optional":true,"conflicts_with":["records"]},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_dns_aaaa_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"optional":true,"conflicts_with":["target_resource_id"]},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_resource_id":{"type":"string","optional":true,"conflicts_with":["records"]},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_dns_caa_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"flags":{"type":"number","required":true},"tag":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_dns_cname_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"record":{"type":"string","optional":true,"exactly_one_of":["record","target_resource_id"]},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_resource_id":{"type":"string","optional":true,"exactly_one_of":["record","target_resource_id"]},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_dns_mx_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","optional":true,"default":"@"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"exchange":{"type":"string","required":true},"preference":{"type":"string","required":true}}},"required":true}}}},"azurerm_dns_ns_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["list","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_dns_ptr_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_dns_srv_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"port":{"type":"number","required":true},"priority":{"type":"number","required":true},"target":{"type":"string","required":true},"weight":{"type":"number","required":true}}},"required":true}}}},"azurerm_dns_txt_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_dns_zone":{"block":{"attributes":{"max_number_of_record_sets":{"type":"number","computed":true},"name":{"type":"string","required":true},"name_servers":{"type":["set","string"],"computed":true},"number_of_record_sets":{"type":"number","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"soa_record":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","required":true},"expire_time":{"type":"number","optional":true,"default":2419200},"fqdn":{"type":"string","computed":true},"host_name":{"type":"string","computed":true},"minimum_ttl":{"type":"number","optional":true,"default":300},"refresh_time":{"type":"number","optional":true,"default":3600},"retry_time":{"type":"number","optional":true,"default":300},"serial_number":{"type":"number","optional":true,"default":1},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","optional":true,"default":3600}}},"optional":true,"computed":true}}}},"azurerm_dynatrace_monitor":{"block":{"attributes":{"location":{"type":"string","required":true},"marketplace_subscription":{"type":"string","required":true},"monitoring_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"environment_properties":{"nesting_mode":3,"block":{"block_types":{"environment_info":{"nesting_mode":3,"block":{"attributes":{"environment_id":{"type":"string","required":true}}},"required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true},"plan":{"nesting_mode":3,"block":{"attributes":{"billing_cycle":{"type":"string","optional":true},"effective_date":{"type":"string","computed":true},"plan":{"type":"string","required":true},"usage_type":{"type":"string","optional":true}}},"required":true},"user":{"nesting_mode":3,"block":{"attributes":{"country":{"type":"string","optional":true},"email":{"type":"string","required":true},"first_name":{"type":"string","required":true},"last_name":{"type":"string","required":true},"phone_number":{"type":"string","optional":true}}},"required":true}}}},"azurerm_dynatrace_tag_rules":{"block":{"attributes":{"monitor_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"log_rule":{"nesting_mode":3,"block":{"attributes":{"send_activity_logs_enabled":{"type":"bool","optional":true,"default":false},"send_azure_active_directory_logs_enabled":{"type":"bool","optional":true,"default":false},"send_subscription_logs_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"filtering_tag":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"metric_rule":{"nesting_mode":3,"block":{"attributes":{"sending_metrics_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"filtering_tag":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_elastic_cloud_elasticsearch":{"block":{"attributes":{"elastic_cloud_deployment_id":{"type":"string","computed":true},"elastic_cloud_email_address":{"type":"string","required":true},"elastic_cloud_sso_default_url":{"type":"string","computed":true},"elastic_cloud_user_id":{"type":"string","computed":true},"elasticsearch_service_url":{"type":"string","computed":true},"kibana_service_url":{"type":"string","computed":true},"kibana_sso_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"monitoring_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"logs":{"nesting_mode":3,"block":{"attributes":{"send_activity_logs":{"type":"bool","optional":true,"default":false},"send_azuread_logs":{"type":"bool","optional":true,"default":false},"send_subscription_logs":{"type":"bool","optional":true,"default":false}},"block_types":{"filtering_tag":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_elastic_san":{"block":{"attributes":{"base_size_in_tib":{"type":"number","required":true},"extended_size_in_tib":{"type":"number","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"total_iops":{"type":"number","computed":true},"total_mbps":{"type":"number","computed":true},"total_size_in_tib":{"type":"number","computed":true},"total_volume_size_in_gib":{"type":"number","computed":true},"volume_group_count":{"type":"number","computed":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"tier":{"type":"string","optional":true,"default":"Premium"}}},"required":true}}}},"azurerm_elastic_san_volume":{"block":{"attributes":{"name":{"type":"string","required":true},"size_in_gib":{"type":"number","required":true},"target_iqn":{"type":"string","computed":true},"target_portal_hostname":{"type":"string","computed":true},"target_portal_port":{"type":"number","computed":true},"volume_group_id":{"type":"string","required":true},"volume_id":{"type":"string","computed":true}},"block_types":{"create_source":{"nesting_mode":3,"block":{"attributes":{"source_id":{"type":"string","required":true},"source_type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_elastic_san_volume_group":{"block":{"attributes":{"elastic_san_id":{"type":"string","required":true},"encryption_type":{"type":"string","optional":true,"default":"EncryptionAtRestWithPlatformKey"},"name":{"type":"string","required":true},"protocol_type":{"type":"string","optional":true,"default":"Iscsi"}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"current_versioned_key_expiration_timestamp":{"type":"string","computed":true},"current_versioned_key_id":{"type":"string","computed":true},"key_vault_key_id":{"type":"string","required":true},"last_key_rotation_timestamp":{"type":"string","computed":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"subnet_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_email_communication_service":{"block":{"attributes":{"data_location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_email_communication_service_domain":{"block":{"attributes":{"domain_management":{"type":"string","required":true},"email_service_id":{"type":"string","required":true},"from_sender_domain":{"type":"string","computed":true},"mail_from_sender_domain":{"type":"string","computed":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"user_engagement_tracking_enabled":{"type":"bool","optional":true},"verification_records":{"type":["list",["object",{"dkim":["list",["object",{"name":"string","ttl":"number","type":"string","value":"string"}]],"dkim2":["list",["object",{"name":"string","ttl":"number","type":"string","value":"string"}]],"dmarc":["list",["object",{"name":"string","ttl":"number","type":"string","value":"string"}]],"domain":["list",["object",{"name":"string","ttl":"number","type":"string","value":"string"}]],"spf":["list",["object",{"name":"string","ttl":"number","type":"string","value":"string"}]]}]],"computed":true}}}},"azurerm_email_communication_service_domain_sender_username":{"block":{"attributes":{"display_name":{"type":"string","optional":true},"email_service_domain_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_eventgrid_domain":{"block":{"attributes":{"auto_create_topic_with_first_subscription":{"type":"bool","optional":true,"default":true},"auto_delete_topic_with_last_subscription":{"type":"bool","optional":true,"default":true},"endpoint":{"type":"string","computed":true},"inbound_ip_rule":{"type":["list",["object",{"action":"string","ip_mask":"string"}]],"optional":true},"input_schema":{"type":"string","optional":true,"default":"EventGridSchema"},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"input_mapping_default_values":{"nesting_mode":3,"block":{"attributes":{"data_version":{"type":"string","optional":true},"event_type":{"type":"string","optional":true},"subject":{"type":"string","optional":true}}},"optional":true},"input_mapping_fields":{"nesting_mode":3,"block":{"attributes":{"data_version":{"type":"string","optional":true},"event_time":{"type":"string","optional":true},"event_type":{"type":"string","optional":true},"id":{"type":"string","optional":true},"subject":{"type":"string","optional":true},"topic":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_eventgrid_domain_topic":{"block":{"attributes":{"domain_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_eventgrid_event_subscription":{"block":{"attributes":{"advanced_filtering_on_arrays_enabled":{"type":"bool","optional":true,"default":false},"event_delivery_schema":{"type":"string","optional":true,"default":"EventGridSchema"},"eventhub_endpoint_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["azure_function_endpoint","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"expiration_time_utc":{"type":"string","optional":true},"hybrid_connection_endpoint_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"included_event_types":{"type":["list","string"],"optional":true,"computed":true},"labels":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"scope":{"type":"string","required":true},"service_bus_queue_endpoint_id":{"type":"string","optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"service_bus_topic_endpoint_id":{"type":"string","optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","storage_queue_endpoint","webhook_endpoint"]}},"block_types":{"advanced_filter":{"nesting_mode":3,"block":{"block_types":{"bool_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"bool","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"is_not_null":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"is_null_or_undefined":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_greater_than":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_greater_than_or_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","number"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_in_range":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list",["list","number"]],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_less_than":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_less_than_or_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_not_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","number"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_not_in_range":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list",["list","number"]],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_begins_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_contains":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_ends_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_begins_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_contains":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_ends_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]}}},"optional":true},"azure_function_endpoint":{"nesting_mode":3,"block":{"attributes":{"function_id":{"type":"string","required":true},"max_events_per_batch":{"type":"number","optional":true},"preferred_batch_size_in_kilobytes":{"type":"number","optional":true}}},"optional":true,"conflicts_with":["eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"dead_letter_identity":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true},"user_assigned_identity":{"type":"string","optional":true}}},"optional":true},"delivery_identity":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true},"user_assigned_identity":{"type":"string","optional":true}}},"optional":true},"delivery_property":{"nesting_mode":3,"block":{"attributes":{"header_name":{"type":"string","required":true},"secret":{"type":"bool","optional":true},"source_field":{"type":"string","optional":true},"type":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"retry_policy":{"nesting_mode":3,"block":{"attributes":{"event_time_to_live":{"type":"number","required":true},"max_delivery_attempts":{"type":"number","required":true}}},"optional":true,"computed":true},"storage_blob_dead_letter_destination":{"nesting_mode":3,"block":{"attributes":{"storage_account_id":{"type":"string","required":true},"storage_blob_container_name":{"type":"string","required":true}}},"optional":true},"storage_queue_endpoint":{"nesting_mode":3,"block":{"attributes":{"queue_message_time_to_live_in_seconds":{"type":"number","optional":true},"queue_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","webhook_endpoint"]},"subject_filter":{"nesting_mode":3,"block":{"attributes":{"case_sensitive":{"type":"bool","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]},"subject_begins_with":{"type":"string","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]},"subject_ends_with":{"type":"string","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]}}},"optional":true},"webhook_endpoint":{"nesting_mode":3,"block":{"attributes":{"active_directory_app_id_or_uri":{"type":"string","optional":true},"active_directory_tenant_id":{"type":"string","optional":true},"base_url":{"type":"string","computed":true},"max_events_per_batch":{"type":"number","optional":true},"preferred_batch_size_in_kilobytes":{"type":"number","optional":true},"url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint"]}}}},"azurerm_eventgrid_namespace":{"block":{"attributes":{"capacity":{"type":"number","optional":true,"default":1},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Standard"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"inbound_ip_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"ip_mask":{"type":"string","required":true}}},"optional":true},"topic_spaces_configuration":{"nesting_mode":3,"block":{"attributes":{"alternative_authentication_name_source":{"type":["list","string"],"optional":true},"maximum_client_sessions_per_authentication_name":{"type":"number","optional":true,"default":1},"maximum_session_expiry_in_hours":{"type":"number","optional":true,"default":1},"route_topic_id":{"type":"string","optional":true}},"block_types":{"dynamic_routing_enrichment":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"static_routing_enrichment":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_eventgrid_partner_configuration":{"block":{"attributes":{"default_maximum_expiration_time_in_days":{"type":"number","optional":true,"default":7},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"partner_authorization":{"nesting_mode":3,"block":{"attributes":{"authorization_expiration_time_in_utc":{"type":"string","optional":true},"partner_name":{"type":"string","required":true},"partner_registration_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_eventgrid_partner_namespace":{"block":{"attributes":{"endpoint":{"type":"string","computed":true},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"partner_registration_id":{"type":"string","required":true},"partner_topic_routing_mode":{"type":"string","optional":true,"default":"ChannelNameHeader"},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"inbound_ip_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"ip_mask":{"type":"string","required":true}}},"optional":true}}}},"azurerm_eventgrid_partner_registration":{"block":{"attributes":{"name":{"type":"string","required":true},"partner_registration_id":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_eventgrid_system_topic":{"block":{"attributes":{"location":{"type":"string","required":true},"metric_arm_resource_id":{"type":"string","computed":true},"metric_resource_id":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_arm_resource_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["source_resource_id"]},"source_resource_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["source_arm_resource_id"]},"tags":{"type":["map","string"],"optional":true},"topic_type":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_eventgrid_system_topic_event_subscription":{"block":{"attributes":{"advanced_filtering_on_arrays_enabled":{"type":"bool","optional":true,"default":false},"event_delivery_schema":{"type":"string","optional":true,"default":"EventGridSchema"},"eventhub_endpoint_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["azure_function_endpoint","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"expiration_time_utc":{"type":"string","optional":true},"hybrid_connection_endpoint_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"included_event_types":{"type":["list","string"],"optional":true,"computed":true},"labels":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"service_bus_queue_endpoint_id":{"type":"string","optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"service_bus_topic_endpoint_id":{"type":"string","optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"system_topic":{"type":"string","required":true}},"block_types":{"advanced_filter":{"nesting_mode":3,"block":{"block_types":{"bool_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"bool","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"is_not_null":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"is_null_or_undefined":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_greater_than":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_greater_than_or_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","number"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_in_range":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list",["list","number"]],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_less_than":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_less_than_or_equals":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"value":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_not_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","number"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"number_not_in_range":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list",["list","number"]],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_begins_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_contains":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_ends_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_begins_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_contains":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_ends_with":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]},"string_not_in":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["advanced_filter.0.bool_equals","advanced_filter.0.number_greater_than","advanced_filter.0.number_greater_than_or_equals","advanced_filter.0.number_less_than","advanced_filter.0.number_less_than_or_equals","advanced_filter.0.number_in","advanced_filter.0.number_not_in","advanced_filter.0.string_begins_with","advanced_filter.0.string_not_begins_with","advanced_filter.0.string_ends_with","advanced_filter.0.string_not_ends_with","advanced_filter.0.string_contains","advanced_filter.0.string_not_contains","advanced_filter.0.string_in","advanced_filter.0.string_not_in","advanced_filter.0.is_not_null","advanced_filter.0.is_null_or_undefined","advanced_filter.0.number_in_range","advanced_filter.0.number_not_in_range"]}}},"optional":true},"azure_function_endpoint":{"nesting_mode":3,"block":{"attributes":{"function_id":{"type":"string","required":true},"max_events_per_batch":{"type":"number","optional":true},"preferred_batch_size_in_kilobytes":{"type":"number","optional":true}}},"optional":true,"conflicts_with":["eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint","webhook_endpoint"]},"dead_letter_identity":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true},"user_assigned_identity":{"type":"string","optional":true}}},"optional":true},"delivery_identity":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true},"user_assigned_identity":{"type":"string","optional":true}}},"optional":true},"delivery_property":{"nesting_mode":3,"block":{"attributes":{"header_name":{"type":"string","required":true},"secret":{"type":"bool","optional":true},"source_field":{"type":"string","optional":true},"type":{"type":"string","required":true},"value":{"type":"string","optional":true}}},"optional":true},"retry_policy":{"nesting_mode":3,"block":{"attributes":{"event_time_to_live":{"type":"number","required":true},"max_delivery_attempts":{"type":"number","required":true}}},"optional":true,"computed":true},"storage_blob_dead_letter_destination":{"nesting_mode":3,"block":{"attributes":{"storage_account_id":{"type":"string","required":true},"storage_blob_container_name":{"type":"string","required":true}}},"optional":true},"storage_queue_endpoint":{"nesting_mode":3,"block":{"attributes":{"queue_message_time_to_live_in_seconds":{"type":"number","optional":true},"queue_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","webhook_endpoint"]},"subject_filter":{"nesting_mode":3,"block":{"attributes":{"case_sensitive":{"type":"bool","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]},"subject_begins_with":{"type":"string","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]},"subject_ends_with":{"type":"string","optional":true,"at_least_one_of":["subject_filter.0.subject_begins_with","subject_filter.0.subject_ends_with","subject_filter.0.case_sensitive"]}}},"optional":true},"webhook_endpoint":{"nesting_mode":3,"block":{"attributes":{"active_directory_app_id_or_uri":{"type":"string","optional":true},"active_directory_tenant_id":{"type":"string","optional":true},"base_url":{"type":"string","computed":true},"max_events_per_batch":{"type":"number","optional":true},"preferred_batch_size_in_kilobytes":{"type":"number","optional":true},"url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_function_endpoint","eventhub_endpoint_id","hybrid_connection_endpoint_id","service_bus_queue_endpoint_id","service_bus_topic_endpoint_id","storage_queue_endpoint"]}}}},"azurerm_eventgrid_topic":{"block":{"attributes":{"endpoint":{"type":"string","computed":true},"inbound_ip_rule":{"type":["list",["object",{"action":"string","ip_mask":"string"}]],"optional":true},"input_schema":{"type":"string","optional":true,"default":"EventGridSchema"},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"input_mapping_default_values":{"nesting_mode":3,"block":{"attributes":{"data_version":{"type":"string","optional":true},"event_type":{"type":"string","optional":true},"subject":{"type":"string","optional":true}}},"optional":true},"input_mapping_fields":{"nesting_mode":3,"block":{"attributes":{"data_version":{"type":"string","optional":true},"event_time":{"type":"string","optional":true},"event_type":{"type":"string","optional":true},"id":{"type":"string","optional":true},"subject":{"type":"string","optional":true},"topic":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_eventhub":{"block":{"attributes":{"message_retention":{"type":"number","optional":true,"computed":true,"exactly_one_of":["retention_description","message_retention"]},"name":{"type":"string","required":true},"namespace_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["namespace_id","namespace_name"]},"namespace_name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["namespace_id","namespace_name"]},"partition_count":{"type":"number","required":true},"partition_ids":{"type":["set","string"],"computed":true},"resource_group_name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["namespace_id","resource_group_name"]},"status":{"type":"string","optional":true,"default":"Active"}},"block_types":{"capture_description":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"encoding":{"type":"string","required":true},"interval_in_seconds":{"type":"number","optional":true,"default":300},"size_limit_in_bytes":{"type":"number","optional":true,"default":314572800},"skip_empty_archives":{"type":"bool","optional":true,"default":false}},"block_types":{"destination":{"nesting_mode":3,"block":{"attributes":{"archive_name_format":{"type":"string","required":true},"blob_container_name":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"required":true}}},"optional":true},"retention_description":{"nesting_mode":3,"block":{"attributes":{"cleanup_policy":{"type":"string","required":true},"retention_time_in_hours":{"type":"number","optional":true,"exactly_one_of":["retention_description.0.tombstone_retention_time_in_hours","retention_description.0.retention_time_in_hours"]},"tombstone_retention_time_in_hours":{"type":"number","optional":true,"exactly_one_of":["retention_description.0.retention_time_in_hours","retention_description.0.tombstone_retention_time_in_hours"]}}},"optional":true,"computed":true}}}},"azurerm_eventhub_authorization_rule":{"block":{"attributes":{"eventhub_name":{"type":"string","required":true},"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_connection_string_alias":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_eventhub_cluster":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_eventhub_consumer_group":{"block":{"attributes":{"eventhub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"user_metadata":{"type":"string","optional":true}}}},"azurerm_eventhub_namespace":{"block":{"attributes":{"auto_inflate_enabled":{"type":"bool","optional":true,"default":false},"capacity":{"type":"number","optional":true,"default":1},"dedicated_cluster_id":{"type":"string","optional":true},"default_primary_connection_string":{"type":"string","computed":true},"default_primary_connection_string_alias":{"type":"string","computed":true},"default_primary_key":{"type":"string","computed":true},"default_secondary_connection_string":{"type":"string","computed":true},"default_secondary_connection_string_alias":{"type":"string","computed":true},"default_secondary_key":{"type":"string","computed":true},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"maximum_throughput_units":{"type":"number","optional":true},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"network_rulesets":{"type":["list",["object",{"default_action":"string","ip_rule":["list",["object",{"action":"string","ip_mask":"string"}]],"public_network_access_enabled":"bool","trusted_service_access_enabled":"bool","virtual_network_rule":["set",["object",{"ignore_missing_virtual_network_service_endpoint":"bool","subnet_id":"string"}]]}]],"optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_eventhub_namespace_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_connection_string_alias":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_eventhub_namespace_customer_managed_key":{"block":{"attributes":{"eventhub_namespace_id":{"type":"string","required":true},"infrastructure_encryption_enabled":{"type":"bool","optional":true,"default":false},"key_vault_key_ids":{"type":["set","string"],"required":true},"user_assigned_identity_id":{"type":"string","optional":true}}}},"azurerm_eventhub_namespace_disaster_recovery_config":{"block":{"attributes":{"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"partner_namespace_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_eventhub_namespace_schema_group":{"block":{"attributes":{"name":{"type":"string","required":true},"namespace_id":{"type":"string","required":true},"schema_compatibility":{"type":"string","required":true},"schema_type":{"type":"string","required":true}}}},"azurerm_express_route_circuit":{"block":{"attributes":{"allow_classic_operations":{"type":"bool","optional":true,"default":false},"authorization_key":{"type":"string","optional":true},"bandwidth_in_gbps":{"type":"number","optional":true,"conflicts_with":["bandwidth_in_mbps","peering_location","service_provider_name"],"required_with":["express_route_port_id"]},"bandwidth_in_mbps":{"type":"number","optional":true,"conflicts_with":["bandwidth_in_gbps","express_route_port_id"],"required_with":["peering_location","service_provider_name"]},"express_route_port_id":{"type":"string","optional":true,"conflicts_with":["bandwidth_in_mbps","peering_location","service_provider_name"],"required_with":["bandwidth_in_gbps"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"peering_location":{"type":"string","optional":true,"conflicts_with":["bandwidth_in_gbps","express_route_port_id"],"required_with":["bandwidth_in_mbps","service_provider_name"]},"rate_limiting_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"service_key":{"type":"string","computed":true},"service_provider_name":{"type":"string","optional":true,"conflicts_with":["bandwidth_in_gbps","express_route_port_id"],"required_with":["bandwidth_in_mbps","peering_location"]},"service_provider_provisioning_state":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"family":{"type":"string","required":true},"tier":{"type":"string","required":true}}},"required":true}}}},"azurerm_express_route_circuit_authorization":{"block":{"attributes":{"authorization_key":{"type":"string","computed":true},"authorization_use_status":{"type":"string","computed":true},"express_route_circuit_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_express_route_circuit_connection":{"block":{"attributes":{"address_prefix_ipv4":{"type":"string","required":true},"address_prefix_ipv6":{"type":"string","optional":true},"authorization_key":{"type":"string","optional":true},"name":{"type":"string","required":true},"peer_peering_id":{"type":"string","required":true},"peering_id":{"type":"string","required":true}}}},"azurerm_express_route_circuit_peering":{"block":{"attributes":{"azure_asn":{"type":"number","computed":true},"express_route_circuit_name":{"type":"string","required":true},"gateway_manager_etag":{"type":"string","computed":true},"ipv4_enabled":{"type":"bool","optional":true,"default":true},"peer_asn":{"type":"number","optional":true,"computed":true},"peering_type":{"type":"string","required":true},"primary_azure_port":{"type":"string","computed":true},"primary_peer_address_prefix":{"type":"string","optional":true,"required_with":["secondary_peer_address_prefix"]},"resource_group_name":{"type":"string","required":true},"route_filter_id":{"type":"string","optional":true},"secondary_azure_port":{"type":"string","computed":true},"secondary_peer_address_prefix":{"type":"string","optional":true,"required_with":["primary_peer_address_prefix"]},"shared_key":{"type":"string","optional":true},"vlan_id":{"type":"number","required":true}},"block_types":{"ipv6":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"primary_peer_address_prefix":{"type":"string","required":true},"route_filter_id":{"type":"string","optional":true},"secondary_peer_address_prefix":{"type":"string","required":true}},"block_types":{"microsoft_peering":{"nesting_mode":3,"block":{"attributes":{"advertised_communities":{"type":["list","string"],"optional":true},"advertised_public_prefixes":{"type":["list","string"],"optional":true},"customer_asn":{"type":"number","optional":true,"default":0},"routing_registry_name":{"type":"string","optional":true,"default":"NONE"}}},"optional":true}}},"optional":true},"microsoft_peering_config":{"nesting_mode":3,"block":{"attributes":{"advertised_communities":{"type":["list","string"],"optional":true},"advertised_public_prefixes":{"type":["list","string"],"required":true},"customer_asn":{"type":"number","optional":true,"default":0},"routing_registry_name":{"type":"string","optional":true,"default":"NONE"}}},"optional":true}}}},"azurerm_express_route_connection":{"block":{"attributes":{"authorization_key":{"type":"string","optional":true},"enable_internet_security":{"type":"bool","optional":true},"express_route_circuit_peering_id":{"type":"string","required":true},"express_route_gateway_bypass_enabled":{"type":"bool","optional":true,"default":false},"express_route_gateway_id":{"type":"string","required":true},"name":{"type":"string","required":true},"private_link_fast_path_enabled":{"type":"bool","optional":true},"routing_weight":{"type":"number","optional":true,"default":0}},"block_types":{"routing":{"nesting_mode":3,"block":{"attributes":{"associated_route_table_id":{"type":"string","optional":true,"computed":true,"at_least_one_of":["routing.0.associated_route_table_id","routing.0.propagated_route_table"]},"inbound_route_map_id":{"type":"string","optional":true},"outbound_route_map_id":{"type":"string","optional":true}},"block_types":{"propagated_route_table":{"nesting_mode":3,"block":{"attributes":{"labels":{"type":["set","string"],"optional":true,"computed":true,"at_least_one_of":["routing.0.propagated_route_table.0.labels","routing.0.propagated_route_table.0.route_table_ids"]},"route_table_ids":{"type":["list","string"],"optional":true,"computed":true,"at_least_one_of":["routing.0.propagated_route_table.0.labels","routing.0.propagated_route_table.0.route_table_ids"]}}},"optional":true,"computed":true,"at_least_one_of":["routing.0.associated_route_table_id","routing.0.propagated_route_table"]}}},"optional":true,"computed":true}}}},"azurerm_express_route_gateway":{"block":{"attributes":{"allow_non_virtual_wan_traffic":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scale_units":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_hub_id":{"type":"string","required":true}}}},"azurerm_express_route_port":{"block":{"attributes":{"bandwidth_in_gbps":{"type":"number","required":true},"billing_type":{"type":"string","optional":true,"default":"MeteredData"},"encapsulation":{"type":"string","required":true},"ethertype":{"type":"string","computed":true},"guid":{"type":"string","computed":true},"location":{"type":"string","required":true},"mtu":{"type":"string","computed":true},"name":{"type":"string","required":true},"peering_location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"link1":{"nesting_mode":3,"block":{"attributes":{"admin_enabled":{"type":"bool","optional":true,"default":false},"connector_type":{"type":"string","computed":true},"id":{"type":"string","computed":true},"interface_name":{"type":"string","computed":true},"macsec_cak_keyvault_secret_id":{"type":"string","optional":true},"macsec_cipher":{"type":"string","optional":true,"default":"GcmAes128"},"macsec_ckn_keyvault_secret_id":{"type":"string","optional":true},"macsec_sci_enabled":{"type":"bool","optional":true,"default":false},"patch_panel_id":{"type":"string","computed":true},"rack_id":{"type":"string","computed":true},"router_name":{"type":"string","computed":true}}},"optional":true,"computed":true},"link2":{"nesting_mode":3,"block":{"attributes":{"admin_enabled":{"type":"bool","optional":true,"default":false},"connector_type":{"type":"string","computed":true},"id":{"type":"string","computed":true},"interface_name":{"type":"string","computed":true},"macsec_cak_keyvault_secret_id":{"type":"string","optional":true},"macsec_cipher":{"type":"string","optional":true,"default":"GcmAes128"},"macsec_ckn_keyvault_secret_id":{"type":"string","optional":true},"macsec_sci_enabled":{"type":"bool","optional":true,"default":false},"patch_panel_id":{"type":"string","computed":true},"rack_id":{"type":"string","computed":true},"router_name":{"type":"string","computed":true}}},"optional":true,"computed":true}}}},"azurerm_express_route_port_authorization":{"block":{"attributes":{"authorization_key":{"type":"string","computed":true},"authorization_use_status":{"type":"string","computed":true},"express_route_port_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_extended_custom_location":{"block":{"attributes":{"cluster_extension_ids":{"type":["list","string"],"required":true},"display_name":{"type":"string","optional":true},"host_resource_id":{"type":"string","required":true},"host_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","optional":true},"value":{"type":"string","required":true}}},"optional":true}}}},"azurerm_extended_location_custom_location":{"block":{"attributes":{"cluster_extension_ids":{"type":["list","string"],"required":true},"display_name":{"type":"string","optional":true},"host_resource_id":{"type":"string","required":true},"host_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","optional":true},"value":{"type":"string","required":true}}},"optional":true}}}},"azurerm_fabric_capacity":{"block":{"attributes":{"administration_members":{"type":["set","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"sku":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"tier":{"type":"string","required":true}}},"required":true}}}},"azurerm_federated_identity_credential":{"block":{"attributes":{"audience":{"type":["list","string"],"required":true},"issuer":{"type":"string","required":true},"name":{"type":"string","required":true},"parent_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subject":{"type":"string","required":true}}}},"azurerm_firewall":{"block":{"attributes":{"dns_proxy_enabled":{"type":"bool","optional":true,"computed":true},"dns_servers":{"type":["list","string"],"optional":true},"firewall_policy_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_ip_ranges":{"type":["set","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"sku_tier":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"threat_intel_mode":{"type":"string","optional":true,"computed":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"private_ip_address":{"type":"string","computed":true},"public_ip_address_id":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"optional":true},"management_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"private_ip_address":{"type":"string","computed":true},"public_ip_address_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true},"virtual_hub":{"nesting_mode":3,"block":{"attributes":{"private_ip_address":{"type":"string","computed":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_count":{"type":"number","optional":true,"default":1},"virtual_hub_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_firewall_application_rule_collection":{"block":{"attributes":{"action":{"type":"string","required":true},"azure_firewall_name":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"fqdn_tags":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true},"target_fqdns":{"type":["list","string"],"optional":true}},"block_types":{"protocol":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_firewall_nat_rule_collection":{"block":{"attributes":{"action":{"type":"string","required":true},"azure_firewall_name":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_addresses":{"type":["list","string"],"required":true},"destination_ports":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"protocols":{"type":["list","string"],"required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true},"translated_address":{"type":"string","required":true},"translated_port":{"type":"string","required":true}}},"required":true}}}},"azurerm_firewall_network_rule_collection":{"block":{"attributes":{"action":{"type":"string","required":true},"azure_firewall_name":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_addresses":{"type":["list","string"],"optional":true},"destination_fqdns":{"type":["list","string"],"optional":true},"destination_ip_groups":{"type":["list","string"],"optional":true},"destination_ports":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"protocols":{"type":["list","string"],"required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true}}},"required":true}}}},"azurerm_firewall_policy":{"block":{"attributes":{"auto_learn_private_ranges_enabled":{"type":"bool","optional":true},"base_policy_id":{"type":"string","optional":true},"child_policies":{"type":["list","string"],"computed":true},"firewalls":{"type":["list","string"],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_ip_ranges":{"type":["list","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"rule_collection_groups":{"type":["list","string"],"computed":true},"sku":{"type":"string","optional":true,"default":"Standard"},"sql_redirect_allowed":{"type":"bool","optional":true},"tags":{"type":["map","string"],"optional":true},"threat_intelligence_mode":{"type":"string","optional":true,"default":"Alert"}},"block_types":{"dns":{"nesting_mode":3,"block":{"attributes":{"proxy_enabled":{"type":"bool","optional":true,"default":false},"servers":{"type":["list","string"],"optional":true}}},"optional":true},"explicit_proxy":{"nesting_mode":3,"block":{"attributes":{"enable_pac_file":{"type":"bool","optional":true},"enabled":{"type":"bool","optional":true},"http_port":{"type":"number","optional":true},"https_port":{"type":"number","optional":true},"pac_file":{"type":"string","optional":true},"pac_file_port":{"type":"number","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"insights":{"nesting_mode":3,"block":{"attributes":{"default_log_analytics_workspace_id":{"type":"string","required":true},"enabled":{"type":"bool","required":true},"retention_in_days":{"type":"number","optional":true}},"block_types":{"log_analytics_workspace":{"nesting_mode":3,"block":{"attributes":{"firewall_location":{"type":"string","required":true},"id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"intrusion_detection":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","optional":true},"private_ranges":{"type":["list","string"],"optional":true}},"block_types":{"signature_overrides":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","optional":true},"state":{"type":"string","optional":true}}},"optional":true},"traffic_bypass":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_addresses":{"type":["set","string"],"optional":true},"destination_ip_groups":{"type":["set","string"],"optional":true},"destination_ports":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"source_addresses":{"type":["set","string"],"optional":true},"source_ip_groups":{"type":["set","string"],"optional":true}}},"optional":true}}},"optional":true},"threat_intelligence_allowlist":{"nesting_mode":3,"block":{"attributes":{"fqdns":{"type":["set","string"],"optional":true,"at_least_one_of":["threat_intelligence_allowlist.0.ip_addresses","threat_intelligence_allowlist.0.fqdns"]},"ip_addresses":{"type":["set","string"],"optional":true,"at_least_one_of":["threat_intelligence_allowlist.0.ip_addresses","threat_intelligence_allowlist.0.fqdns"]}}},"optional":true},"tls_certificate":{"nesting_mode":3,"block":{"attributes":{"key_vault_secret_id":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_firewall_policy_rule_collection_group":{"block":{"attributes":{"firewall_policy_id":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"application_rule_collection":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_addresses":{"type":["list","string"],"optional":true},"destination_fqdn_tags":{"type":["list","string"],"optional":true},"destination_fqdns":{"type":["list","string"],"optional":true},"destination_urls":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true},"terminate_tls":{"type":"bool","optional":true},"web_categories":{"type":["list","string"],"optional":true}},"block_types":{"http_headers":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"protocols":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"optional":true},"nat_rule_collection":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_address":{"type":"string","optional":true},"destination_ports":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"protocols":{"type":["list","string"],"required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true},"translated_address":{"type":"string","optional":true},"translated_fqdn":{"type":"string","optional":true},"translated_port":{"type":"number","required":true}}},"required":true}}},"optional":true},"network_rule_collection":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"destination_addresses":{"type":["list","string"],"optional":true},"destination_fqdns":{"type":["list","string"],"optional":true},"destination_ip_groups":{"type":["list","string"],"optional":true},"destination_ports":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"protocols":{"type":["list","string"],"required":true},"source_addresses":{"type":["list","string"],"optional":true},"source_ip_groups":{"type":["list","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_fluid_relay_server":{"block":{"attributes":{"frs_tenant_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"orderer_endpoints":{"type":["list","string"],"computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_key":{"type":"string","computed":true},"service_endpoints":{"type":["list","string"],"computed":true},"storage_endpoints":{"type":["list","string"],"computed":true},"storage_sku":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_frontdoor":{"block":{"attributes":{"backend_pool_health_probes":{"type":["map","string"],"computed":true},"backend_pool_load_balancing_settings":{"type":["map","string"],"computed":true},"backend_pools":{"type":["map","string"],"computed":true},"cname":{"type":"string","computed":true},"explicit_resource_order":{"type":["list",["object",{"backend_pool_health_probe_ids":["list","string"],"backend_pool_ids":["list","string"],"backend_pool_load_balancing_ids":["list","string"],"frontend_endpoint_ids":["list","string"],"routing_rule_ids":["list","string"]}]],"computed":true},"friendly_name":{"type":"string","optional":true},"frontend_endpoints":{"type":["map","string"],"computed":true},"header_frontdoor_id":{"type":"string","computed":true},"load_balancer_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"routing_rules":{"type":["map","string"],"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"backend_pool":{"nesting_mode":3,"block":{"attributes":{"health_probe_name":{"type":"string","required":true},"id":{"type":"string","computed":true},"load_balancing_name":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"backend":{"nesting_mode":3,"block":{"attributes":{"address":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"host_header":{"type":"string","required":true},"http_port":{"type":"number","required":true},"https_port":{"type":"number","required":true},"priority":{"type":"number","optional":true,"default":1},"weight":{"type":"number","optional":true,"default":50}}},"required":true}}},"required":true},"backend_pool_health_probe":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"id":{"type":"string","computed":true},"interval_in_seconds":{"type":"number","optional":true,"default":120},"name":{"type":"string","required":true},"path":{"type":"string","optional":true,"default":"/"},"probe_method":{"type":"string","optional":true,"default":"GET"},"protocol":{"type":"string","optional":true,"default":"Http"}}},"required":true},"backend_pool_load_balancing":{"nesting_mode":3,"block":{"attributes":{"additional_latency_milliseconds":{"type":"number","optional":true,"default":0},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"sample_size":{"type":"number","optional":true,"default":4},"successful_samples_required":{"type":"number","optional":true,"default":2}}},"required":true},"backend_pool_settings":{"nesting_mode":3,"block":{"attributes":{"backend_pools_send_receive_timeout_seconds":{"type":"number","optional":true,"default":60},"enforce_backend_pools_certificate_name_check":{"type":"bool","required":true}}},"optional":true},"frontend_endpoint":{"nesting_mode":3,"block":{"attributes":{"host_name":{"type":"string","required":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"session_affinity_enabled":{"type":"bool","optional":true,"default":false},"session_affinity_ttl_seconds":{"type":"number","optional":true,"default":0},"web_application_firewall_policy_link_id":{"type":"string","optional":true}}},"required":true},"routing_rule":{"nesting_mode":3,"block":{"attributes":{"accepted_protocols":{"type":["list","string"],"required":true},"enabled":{"type":"bool","optional":true,"default":true},"frontend_endpoints":{"type":["list","string"],"required":true},"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"patterns_to_match":{"type":["list","string"],"required":true}},"block_types":{"forwarding_configuration":{"nesting_mode":3,"block":{"attributes":{"backend_pool_name":{"type":"string","required":true},"cache_duration":{"type":"string","optional":true},"cache_enabled":{"type":"bool","optional":true,"default":false},"cache_query_parameter_strip_directive":{"type":"string","optional":true,"default":"StripAll"},"cache_query_parameters":{"type":["list","string"],"optional":true},"cache_use_dynamic_compression":{"type":"bool","optional":true,"default":false},"custom_forwarding_path":{"type":"string","optional":true},"forwarding_protocol":{"type":"string","optional":true,"default":"HttpsOnly"}}},"optional":true},"redirect_configuration":{"nesting_mode":3,"block":{"attributes":{"custom_fragment":{"type":"string","optional":true},"custom_host":{"type":"string","optional":true},"custom_path":{"type":"string","optional":true},"custom_query_string":{"type":"string","optional":true},"redirect_protocol":{"type":"string","required":true},"redirect_type":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_frontdoor_custom_https_configuration":{"block":{"attributes":{"custom_https_provisioning_enabled":{"type":"bool","required":true},"frontend_endpoint_id":{"type":"string","required":true}},"block_types":{"custom_https_configuration":{"nesting_mode":3,"block":{"attributes":{"azure_key_vault_certificate_secret_name":{"type":"string","optional":true},"azure_key_vault_certificate_secret_version":{"type":"string","optional":true},"azure_key_vault_certificate_vault_id":{"type":"string","optional":true},"certificate_source":{"type":"string","optional":true,"default":"FrontDoor"},"minimum_tls_version":{"type":"string","computed":true},"provisioning_state":{"type":"string","computed":true},"provisioning_substate":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_frontdoor_firewall_policy":{"block":{"attributes":{"custom_block_response_body":{"type":"string","optional":true},"custom_block_response_status_code":{"type":"number","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"frontend_endpoint_ids":{"type":["list","string"],"computed":true},"location":{"type":"string","computed":true},"mode":{"type":"string","optional":true,"default":"Prevention"},"name":{"type":"string","required":true},"redirect_url":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"custom_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":1},"rate_limit_duration_in_minutes":{"type":"number","optional":true,"default":1},"rate_limit_threshold":{"type":"number","optional":true,"default":10},"type":{"type":"string","required":true}},"block_types":{"match_condition":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"required":true},"match_variable":{"type":"string","required":true},"negation_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","optional":true},"transforms":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"managed_rule":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true},"version":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true},"override":{"nesting_mode":3,"block":{"attributes":{"rule_group_name":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true},"rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":false},"rule_id":{"type":"string","required":true}},"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"operator":{"type":"string","required":true},"selector":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_frontdoor_rules_engine":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"frontdoor_name":{"type":"string","required":true},"location":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"priority":{"type":"number","required":true}},"block_types":{"action":{"nesting_mode":3,"block":{"block_types":{"request_header":{"nesting_mode":3,"block":{"attributes":{"header_action_type":{"type":"string","optional":true},"header_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"response_header":{"nesting_mode":3,"block":{"attributes":{"header_action_type":{"type":"string","optional":true},"header_name":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"match_condition":{"nesting_mode":3,"block":{"attributes":{"negate_condition":{"type":"bool","optional":true,"default":false},"operator":{"type":"string","required":true},"selector":{"type":"string","optional":true},"transform":{"type":["list","string"],"optional":true},"value":{"type":["list","string"],"optional":true},"variable":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_function_app":{"block":{"attributes":{"app_service_plan_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true,"computed":true},"client_cert_mode":{"type":"string","optional":true},"custom_domain_verification_id":{"type":"string","computed":true},"daily_memory_time_quota":{"type":"number","optional":true},"default_hostname":{"type":"string","computed":true},"enable_builtin_logging":{"type":"bool","optional":true,"default":true},"enabled":{"type":"bool","optional":true,"default":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"os_type":{"type":"string","optional":true,"default":""},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"password":"string","username":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true,"default":"~1"}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_params":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"default_provider":{"type":"string","optional":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":false},"app_scale_limit":{"type":"number","optional":true,"computed":true},"auto_swap_slot_name":{"type":"string","optional":true},"dotnet_framework_version":{"type":"string","optional":true,"default":"v4.0"},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"computed":true},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"java_version":{"type":"string","optional":true},"linux_fx_version":{"type":"string","optional":true,"computed":true},"min_tls_version":{"type":"string","optional":true,"computed":true},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true,"default":false},"scm_ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"scm_type":{"type":"string","optional":true,"computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker_process":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"computed":true},"websockets_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"required":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"source_control":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"manual_integration":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"repo_url":{"type":"string","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"rollback_enabled":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]},"use_mercurial":{"type":"bool","optional":true,"computed":true,"at_least_one_of":["source_control.0.repo_url","source_control.0.branch","source_control.0.manual_integration","source_control.0.use_mercurial","source_control.0.rollback_enabled"]}}},"optional":true,"computed":true,"conflicts_with":["site_config.0.scm_type"]}}}},"azurerm_function_app_active_slot":{"block":{"attributes":{"last_successful_swap":{"type":"string","computed":true},"overwrite_network_config":{"type":"bool","optional":true,"default":true},"slot_id":{"type":"string","required":true}}}},"azurerm_function_app_connection":{"block":{"attributes":{"client_type":{"type":"string","optional":true,"default":"none"},"function_app_id":{"type":"string","required":true},"name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"vnet_solution":{"type":"string","optional":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"client_id":{"type":"string","optional":true},"name":{"type":"string","optional":true},"principal_id":{"type":"string","optional":true},"secret":{"type":"string","optional":true},"subscription_id":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true},"secret_store":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_function_app_flex_consumption":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Optional"},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"hosting_environment_id":{"type":"string","computed":true},"http_concurrency":{"type":"number","optional":true},"https_only":{"type":"bool","optional":true,"default":false},"instance_memory_in_mb":{"type":"number","optional":true,"default":2048},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"maximum_instance_count":{"type":"number","optional":true,"default":100},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"runtime_name":{"type":"string","required":true},"runtime_version":{"type":"string","required":true},"service_plan_id":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"storage_access_key":{"type":"string","optional":true},"storage_authentication_type":{"type":"string","required":true},"storage_container_endpoint":{"type":"string","required":true},"storage_container_type":{"type":"string","required":true},"storage_user_assigned_identity_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_subnet_id":{"type":"string","optional":true},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"always_ready":{"nesting_mode":3,"block":{"attributes":{"instance_count":{"type":"number","optional":true},"name":{"type":"string","required":true}}},"optional":true},"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"application_insights_connection_string":{"type":"string","optional":true},"application_insights_key":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":false},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"app_service_logs":{"nesting_mode":3,"block":{"attributes":{"disk_quota_mb":{"type":"number","optional":true,"default":35},"retention_period_days":{"type":"number","optional":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"sticky_settings":{"nesting_mode":3,"block":{"attributes":{"app_setting_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]},"connection_string_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]}}},"optional":true}}}},"azurerm_function_app_function":{"block":{"attributes":{"config_json":{"type":"string","required":true},"config_url":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"function_app_id":{"type":"string","required":true},"invocation_url":{"type":"string","computed":true},"language":{"type":"string","optional":true},"name":{"type":"string","required":true},"script_root_path_url":{"type":"string","computed":true},"script_url":{"type":"string","computed":true},"secrets_file_url":{"type":"string","computed":true},"test_data":{"type":"string","optional":true},"test_data_url":{"type":"string","computed":true},"url":{"type":"string","computed":true}},"block_types":{"file":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_function_app_hybrid_connection":{"block":{"attributes":{"function_app_id":{"type":"string","required":true},"hostname":{"type":"string","required":true},"namespace_name":{"type":"string","computed":true},"port":{"type":"number","required":true},"relay_id":{"type":"string","required":true},"relay_name":{"type":"string","computed":true},"send_key_name":{"type":"string","optional":true,"default":"RootManageSharedAccessKey"},"send_key_value":{"type":"string","computed":true},"service_bus_namespace":{"type":"string","computed":true},"service_bus_suffix":{"type":"string","computed":true}}}},"azurerm_function_app_slot":{"block":{"attributes":{"app_service_plan_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true,"computed":true},"daily_memory_time_quota":{"type":"number","optional":true},"default_hostname":{"type":"string","computed":true},"enable_builtin_logging":{"type":"bool","optional":true,"default":true},"enabled":{"type":"bool","optional":true,"default":true},"function_app_name":{"type":"string","required":true},"https_only":{"type":"bool","optional":true,"default":false},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"os_type":{"type":"string","optional":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"password":"string","username":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true,"default":"~1"}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_params":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"default_provider":{"type":"string","optional":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":false},"app_scale_limit":{"type":"number","optional":true,"computed":true},"auto_swap_slot_name":{"type":"string","optional":true},"dotnet_framework_version":{"type":"string","optional":true,"default":"v4.0"},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"computed":true},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"java_version":{"type":"string","optional":true},"linux_fx_version":{"type":"string","optional":true,"computed":true},"min_tls_version":{"type":"string","optional":true,"computed":true},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true,"default":false},"scm_ip_restriction":{"type":["list",["object",{"action":"string","headers":["list",["object",{"x_azure_fdid":["set","string"],"x_fd_health_probe":["set","string"],"x_forwarded_for":["set","string"],"x_forwarded_host":["set","string"]}]],"ip_address":"string","name":"string","priority":"number","service_tag":"string","virtual_network_subnet_id":"string"}]],"optional":true,"computed":true},"scm_type":{"type":"string","optional":true,"computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker_process":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"computed":true},"websockets_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"required":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_gallery_application":{"block":{"attributes":{"description":{"type":"string","optional":true},"end_of_life_date":{"type":"string","optional":true},"eula":{"type":"string","optional":true},"gallery_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"privacy_statement_uri":{"type":"string","optional":true},"release_note_uri":{"type":"string","optional":true},"supported_os_type":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_gallery_application_version":{"block":{"attributes":{"config_file":{"type":"string","optional":true},"enable_health_check":{"type":"bool","optional":true,"default":false},"end_of_life_date":{"type":"string","optional":true},"exclude_from_latest":{"type":"bool","optional":true,"default":false},"gallery_application_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"package_file":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"manage_action":{"nesting_mode":3,"block":{"attributes":{"install":{"type":"string","required":true},"remove":{"type":"string","required":true},"update":{"type":"string","optional":true}}},"required":true},"source":{"nesting_mode":3,"block":{"attributes":{"default_configuration_link":{"type":"string","optional":true},"media_link":{"type":"string","required":true}}},"required":true},"target_region":{"nesting_mode":3,"block":{"attributes":{"exclude_from_latest":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"regional_replica_count":{"type":"number","required":true},"storage_account_type":{"type":"string","optional":true,"default":"Standard_LRS"}}},"required":true}}}},"azurerm_graph_services_account":{"block":{"attributes":{"application_id":{"type":"string","required":true},"billing_plan_id":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_hdinsight_hadoop_cluster":{"block":{"attributes":{"cluster_version":{"type":"string","required":true},"https_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssh_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","required":true},"tls_min_version":{"type":"string","optional":true}},"block_types":{"component_version":{"nesting_mode":3,"block":{"attributes":{"hadoop":{"type":"string","required":true}}},"required":true},"compute_isolation":{"nesting_mode":3,"block":{"attributes":{"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"host_sku":{"type":"string","optional":true}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"encryption_algorithm":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"key_vault_managed_identity_id":{"type":"string","optional":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"gateway":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"required":true},"metastores":{"nesting_mode":3,"block":{"block_types":{"ambari":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"hive":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"oozie":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}},"optional":true},"monitor":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"network":{"nesting_mode":3,"block":{"attributes":{"connection_direction":{"type":"string","optional":true,"default":"Inbound"},"private_link_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"private_link_configuration":{"nesting_mode":3,"block":{"attributes":{"group_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}},"optional":true},"roles":{"nesting_mode":3,"block":{"block_types":{"edge_node":{"nesting_mode":3,"block":{"attributes":{"target_instance_count":{"type":"number","required":true},"vm_size":{"type":"string","required":true}},"block_types":{"https_endpoints":{"nesting_mode":3,"block":{"attributes":{"access_modes":{"type":["list","string"],"optional":true},"destination_port":{"type":"number","optional":true},"disable_gateway_auth":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"sub_domain_suffix":{"type":"string","optional":true}}},"optional":true},"install_script_action":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"required":true},"uninstall_script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"optional":true},"head_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.head_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"worker_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.worker_node.0.password"]},"subnet_id":{"type":"string","optional":true},"target_instance_count":{"type":"number","required":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"autoscale":{"nesting_mode":3,"block":{"block_types":{"capacity":{"nesting_mode":3,"block":{"attributes":{"max_instance_count":{"type":"number","required":true},"min_instance_count":{"type":"number","required":true}}},"optional":true,"conflicts_with":["roles.0.worker_node.0.autoscale.0.recurrence"]},"recurrence":{"nesting_mode":3,"block":{"attributes":{"timezone":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"days":{"type":["list","string"],"required":true},"target_instance_count":{"type":"number","required":true},"time":{"type":"string","required":true}}},"required":true}}},"optional":true,"conflicts_with":["roles.0.worker_node.0.autoscale.0.capacity"]}}},"optional":true},"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"zookeeper_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.zookeeper_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"aadds_resource_id":{"type":"string","required":true},"cluster_users_group_dns":{"type":["set","string"],"optional":true},"domain_name":{"type":"string","required":true},"domain_user_password":{"type":"string","required":true},"domain_username":{"type":"string","required":true},"ldaps_urls":{"type":["set","string"],"required":true},"msi_resource_id":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","required":true},"storage_account_key":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","optional":true}}},"optional":true},"storage_account_gen2":{"nesting_mode":3,"block":{"attributes":{"filesystem_id":{"type":"string","required":true},"is_default":{"type":"bool","required":true},"managed_identity_resource_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_hdinsight_hbase_cluster":{"block":{"attributes":{"cluster_version":{"type":"string","required":true},"https_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssh_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","required":true},"tls_min_version":{"type":"string","optional":true}},"block_types":{"component_version":{"nesting_mode":3,"block":{"attributes":{"hbase":{"type":"string","required":true}}},"required":true},"compute_isolation":{"nesting_mode":3,"block":{"attributes":{"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"host_sku":{"type":"string","optional":true}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"encryption_algorithm":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"key_vault_managed_identity_id":{"type":"string","optional":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"gateway":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"required":true},"metastores":{"nesting_mode":3,"block":{"block_types":{"ambari":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"hive":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"oozie":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}},"optional":true},"monitor":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"network":{"nesting_mode":3,"block":{"attributes":{"connection_direction":{"type":"string","optional":true,"default":"Inbound"},"private_link_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"private_link_configuration":{"nesting_mode":3,"block":{"attributes":{"group_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}},"optional":true},"roles":{"nesting_mode":3,"block":{"block_types":{"head_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.head_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"worker_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.worker_node.0.password"]},"subnet_id":{"type":"string","optional":true},"target_instance_count":{"type":"number","required":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"autoscale":{"nesting_mode":3,"block":{"block_types":{"recurrence":{"nesting_mode":3,"block":{"attributes":{"timezone":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"days":{"type":["list","string"],"required":true},"target_instance_count":{"type":"number","required":true},"time":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true},"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"zookeeper_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.zookeeper_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"aadds_resource_id":{"type":"string","required":true},"cluster_users_group_dns":{"type":["set","string"],"optional":true},"domain_name":{"type":"string","required":true},"domain_user_password":{"type":"string","required":true},"domain_username":{"type":"string","required":true},"ldaps_urls":{"type":["set","string"],"required":true},"msi_resource_id":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","required":true},"storage_account_key":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","optional":true}}},"optional":true},"storage_account_gen2":{"nesting_mode":3,"block":{"attributes":{"filesystem_id":{"type":"string","required":true},"is_default":{"type":"bool","required":true},"managed_identity_resource_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_hdinsight_interactive_query_cluster":{"block":{"attributes":{"cluster_version":{"type":"string","required":true},"encryption_in_transit_enabled":{"type":"bool","optional":true},"https_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssh_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","required":true},"tls_min_version":{"type":"string","optional":true}},"block_types":{"component_version":{"nesting_mode":3,"block":{"attributes":{"interactive_hive":{"type":"string","required":true}}},"required":true},"compute_isolation":{"nesting_mode":3,"block":{"attributes":{"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"host_sku":{"type":"string","optional":true}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"encryption_algorithm":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"key_vault_managed_identity_id":{"type":"string","optional":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"gateway":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"required":true},"metastores":{"nesting_mode":3,"block":{"block_types":{"ambari":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"hive":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"oozie":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}},"optional":true},"monitor":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"network":{"nesting_mode":3,"block":{"attributes":{"connection_direction":{"type":"string","optional":true,"default":"Inbound"},"private_link_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"private_link_configuration":{"nesting_mode":3,"block":{"attributes":{"group_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}},"optional":true},"roles":{"nesting_mode":3,"block":{"block_types":{"head_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.head_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"worker_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.worker_node.0.password"]},"subnet_id":{"type":"string","optional":true},"target_instance_count":{"type":"number","required":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"autoscale":{"nesting_mode":3,"block":{"block_types":{"recurrence":{"nesting_mode":3,"block":{"attributes":{"timezone":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"days":{"type":["list","string"],"required":true},"target_instance_count":{"type":"number","required":true},"time":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true},"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"zookeeper_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.zookeeper_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"aadds_resource_id":{"type":"string","required":true},"cluster_users_group_dns":{"type":["set","string"],"optional":true},"domain_name":{"type":"string","required":true},"domain_user_password":{"type":"string","required":true},"domain_username":{"type":"string","required":true},"ldaps_urls":{"type":["set","string"],"required":true},"msi_resource_id":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","required":true},"storage_account_key":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","optional":true}}},"optional":true},"storage_account_gen2":{"nesting_mode":3,"block":{"attributes":{"filesystem_id":{"type":"string","required":true},"is_default":{"type":"bool","required":true},"managed_identity_resource_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_hdinsight_kafka_cluster":{"block":{"attributes":{"cluster_version":{"type":"string","required":true},"encryption_in_transit_enabled":{"type":"bool","optional":true},"https_endpoint":{"type":"string","computed":true},"kafka_rest_proxy_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssh_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","required":true},"tls_min_version":{"type":"string","optional":true}},"block_types":{"component_version":{"nesting_mode":3,"block":{"attributes":{"kafka":{"type":"string","required":true}}},"required":true},"compute_isolation":{"nesting_mode":3,"block":{"attributes":{"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"host_sku":{"type":"string","optional":true}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"encryption_algorithm":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"key_vault_managed_identity_id":{"type":"string","optional":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"gateway":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"required":true},"metastores":{"nesting_mode":3,"block":{"block_types":{"ambari":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"hive":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"oozie":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}},"optional":true},"monitor":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"network":{"nesting_mode":3,"block":{"attributes":{"connection_direction":{"type":"string","optional":true,"default":"Inbound"},"private_link_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"private_link_configuration":{"nesting_mode":3,"block":{"attributes":{"group_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}},"optional":true},"rest_proxy":{"nesting_mode":3,"block":{"attributes":{"security_group_id":{"type":"string","required":true},"security_group_name":{"type":"string","required":true}}},"optional":true,"required_with":["roles.0.kafka_management_node"]},"roles":{"nesting_mode":3,"block":{"block_types":{"head_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.head_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"kafka_management_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.kafka_management_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","computed":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"optional":true},"worker_node":{"nesting_mode":3,"block":{"attributes":{"number_of_disks_per_node":{"type":"number","required":true},"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.worker_node.0.password"]},"subnet_id":{"type":"string","optional":true},"target_instance_count":{"type":"number","required":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"zookeeper_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.zookeeper_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"aadds_resource_id":{"type":"string","required":true},"cluster_users_group_dns":{"type":["set","string"],"optional":true},"domain_name":{"type":"string","required":true},"domain_user_password":{"type":"string","required":true},"domain_username":{"type":"string","required":true},"ldaps_urls":{"type":["set","string"],"required":true},"msi_resource_id":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","required":true},"storage_account_key":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","optional":true}}},"optional":true},"storage_account_gen2":{"nesting_mode":3,"block":{"attributes":{"filesystem_id":{"type":"string","required":true},"is_default":{"type":"bool","required":true},"managed_identity_resource_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_hdinsight_spark_cluster":{"block":{"attributes":{"cluster_version":{"type":"string","required":true},"encryption_in_transit_enabled":{"type":"bool","optional":true},"https_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"ssh_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","required":true},"tls_min_version":{"type":"string","optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"component_version":{"nesting_mode":3,"block":{"attributes":{"spark":{"type":"string","required":true}}},"required":true},"compute_isolation":{"nesting_mode":3,"block":{"attributes":{"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"host_sku":{"type":"string","optional":true}}},"optional":true},"disk_encryption":{"nesting_mode":3,"block":{"attributes":{"encryption_algorithm":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"key_vault_managed_identity_id":{"type":"string","optional":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"gateway":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"required":true},"metastores":{"nesting_mode":3,"block":{"block_types":{"ambari":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"hive":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"oozie":{"nesting_mode":3,"block":{"attributes":{"database_name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true}}},"optional":true},"monitor":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"primary_key":{"type":"string","required":true}}},"optional":true},"network":{"nesting_mode":3,"block":{"attributes":{"connection_direction":{"type":"string","optional":true,"default":"Inbound"},"private_link_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"private_link_configuration":{"nesting_mode":3,"block":{"attributes":{"group_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}},"optional":true},"roles":{"nesting_mode":3,"block":{"block_types":{"head_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.head_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"worker_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.worker_node.0.password"]},"subnet_id":{"type":"string","optional":true},"target_instance_count":{"type":"number","required":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"autoscale":{"nesting_mode":3,"block":{"block_types":{"capacity":{"nesting_mode":3,"block":{"attributes":{"max_instance_count":{"type":"number","required":true},"min_instance_count":{"type":"number","required":true}}},"optional":true,"conflicts_with":["roles.0.worker_node.0.autoscale.0.recurrence"]},"recurrence":{"nesting_mode":3,"block":{"attributes":{"timezone":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"days":{"type":["list","string"],"required":true},"target_instance_count":{"type":"number","required":true},"time":{"type":"string","required":true}}},"required":true}}},"optional":true,"conflicts_with":["roles.0.worker_node.0.autoscale.0.capacity"]}}},"optional":true},"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true},"zookeeper_node":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","optional":true},"ssh_keys":{"type":["set","string"],"optional":true,"conflicts_with":["roles.0.zookeeper_node.0.password"]},"subnet_id":{"type":"string","optional":true},"username":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true},"vm_size":{"type":"string","required":true}},"block_types":{"script_actions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"uri":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"security_profile":{"nesting_mode":3,"block":{"attributes":{"aadds_resource_id":{"type":"string","required":true},"cluster_users_group_dns":{"type":["set","string"],"optional":true},"domain_name":{"type":"string","required":true},"domain_user_password":{"type":"string","required":true},"domain_username":{"type":"string","required":true},"ldaps_urls":{"type":["set","string"],"required":true},"msi_resource_id":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","required":true},"storage_account_key":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","optional":true}}},"optional":true},"storage_account_gen2":{"nesting_mode":3,"block":{"attributes":{"filesystem_id":{"type":"string","required":true},"is_default":{"type":"bool","required":true},"managed_identity_resource_id":{"type":"string","required":true},"storage_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_healthbot":{"block":{"attributes":{"bot_management_portal_url":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_healthcare_dicom_service":{"block":{"attributes":{"authentication":{"type":["list",["object",{"audience":["list","string"],"authority":"string"}]],"computed":true},"data_partitions_enabled":{"type":"bool","optional":true,"default":false},"encryption_key_url":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_endpoint":{"type":["set",["object",{"id":"string","name":"string"}]],"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"service_url":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allow_credentials":{"type":"bool","optional":true,"default":false},"allowed_headers":{"type":["list","string"],"optional":true},"allowed_methods":{"type":["list","string"],"optional":true},"allowed_origins":{"type":["list","string"],"optional":true},"max_age_in_seconds":{"type":"number","optional":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"storage":{"nesting_mode":3,"block":{"attributes":{"file_system_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_healthcare_fhir_service":{"block":{"attributes":{"access_policy_object_ids":{"type":["set","string"],"optional":true},"configuration_export_storage_account_name":{"type":"string","optional":true},"container_registry_login_server_url":{"type":["set","string"],"optional":true},"kind":{"type":"string","optional":true,"default":"fhir-R4"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"audience":{"type":"string","required":true},"authority":{"type":"string","required":true},"smart_proxy_enabled":{"type":"bool","optional":true}}},"required":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["set","string"],"required":true},"allowed_methods":{"type":["set","string"],"required":true},"allowed_origins":{"type":["set","string"],"required":true},"credentials_allowed":{"type":"bool","optional":true,"default":false},"max_age_in_seconds":{"type":"number","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"oci_artifact":{"nesting_mode":3,"block":{"attributes":{"digest":{"type":"string","optional":true},"image_name":{"type":"string","optional":true},"login_server":{"type":"string","required":true}}},"optional":true}}}},"azurerm_healthcare_medtech_service":{"block":{"attributes":{"device_mapping_json":{"type":"string","required":true},"eventhub_consumer_group_name":{"type":"string","required":true},"eventhub_name":{"type":"string","required":true},"eventhub_namespace_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_healthcare_medtech_service_fhir_destination":{"block":{"attributes":{"destination_fhir_mapping_json":{"type":"string","required":true},"destination_fhir_service_id":{"type":"string","required":true},"destination_identity_resolution_type":{"type":"string","required":true},"location":{"type":"string","required":true},"medtech_service_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_healthcare_service":{"block":{"attributes":{"access_policy_object_ids":{"type":["set","string"],"optional":true},"configuration_export_storage_account_name":{"type":"string","optional":true},"cosmosdb_key_vault_key_versionless_id":{"type":"string","optional":true},"cosmosdb_throughput":{"type":"number","optional":true,"default":1000},"kind":{"type":"string","optional":true,"default":"fhir"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"authentication_configuration":{"nesting_mode":3,"block":{"attributes":{"audience":{"type":"string","optional":true,"at_least_one_of":["authentication_configuration.0.authority","authentication_configuration.0.audience","authentication_configuration.0.smart_proxy_enabled"]},"authority":{"type":"string","optional":true,"at_least_one_of":["authentication_configuration.0.authority","authentication_configuration.0.audience","authentication_configuration.0.smart_proxy_enabled"]},"smart_proxy_enabled":{"type":"bool","optional":true,"at_least_one_of":["authentication_configuration.0.authority","authentication_configuration.0.audience","authentication_configuration.0.smart_proxy_enabled"]}}},"optional":true,"computed":true},"cors_configuration":{"nesting_mode":3,"block":{"attributes":{"allow_credentials":{"type":"bool","optional":true,"at_least_one_of":["cors_configuration.0.allowed_origins","cors_configuration.0.allowed_headers","cors_configuration.0.allowed_methods","cors_configuration.0.max_age_in_seconds","cors_configuration.0.allow_credentials"]},"allowed_headers":{"type":["set","string"],"optional":true,"at_least_one_of":["cors_configuration.0.allowed_origins","cors_configuration.0.allowed_headers","cors_configuration.0.allowed_methods","cors_configuration.0.max_age_in_seconds","cors_configuration.0.allow_credentials"]},"allowed_methods":{"type":["list","string"],"optional":true,"at_least_one_of":["cors_configuration.0.allowed_origins","cors_configuration.0.allowed_headers","cors_configuration.0.allowed_methods","cors_configuration.0.max_age_in_seconds","cors_configuration.0.allow_credentials"]},"allowed_origins":{"type":["set","string"],"optional":true,"at_least_one_of":["cors_configuration.0.allowed_origins","cors_configuration.0.allowed_headers","cors_configuration.0.allowed_methods","cors_configuration.0.max_age_in_seconds","cors_configuration.0.allow_credentials"]},"max_age_in_seconds":{"type":"number","optional":true,"at_least_one_of":["cors_configuration.0.allowed_origins","cors_configuration.0.allowed_headers","cors_configuration.0.allowed_methods","cors_configuration.0.max_age_in_seconds","cors_configuration.0.allow_credentials"]}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_healthcare_workspace":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_endpoint_connection":{"type":["set",["object",{"id":"string","name":"string"}]],"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_hpc_cache":{"block":{"attributes":{"automatically_rotate_key_to_latest_enabled":{"type":"bool","optional":true,"required_with":["key_vault_key_id"]},"cache_size_in_gb":{"type":"number","required":true},"key_vault_key_id":{"type":"string","optional":true,"required_with":["identity"]},"location":{"type":"string","required":true},"mount_addresses":{"type":["list","string"],"computed":true},"mtu":{"type":"number","optional":true,"default":1500},"name":{"type":"string","required":true},"ntp_server":{"type":"string","optional":true,"default":"time.windows.com"},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"default_access_policy":{"nesting_mode":3,"block":{"block_types":{"access_rule":{"nesting_mode":4,"block":{"attributes":{"access":{"type":"string","required":true},"anonymous_gid":{"type":"number","optional":true},"anonymous_uid":{"type":"number","optional":true},"filter":{"type":"string","optional":true},"root_squash_enabled":{"type":"bool","optional":true},"scope":{"type":"string","required":true},"submount_access_enabled":{"type":"bool","optional":true},"suid_enabled":{"type":"bool","optional":true}}},"required":true}}},"optional":true,"computed":true},"directory_active_directory":{"nesting_mode":3,"block":{"attributes":{"cache_netbios_name":{"type":"string","required":true},"dns_primary_ip":{"type":"string","required":true},"dns_secondary_ip":{"type":"string","optional":true},"domain_name":{"type":"string","required":true},"domain_netbios_name":{"type":"string","required":true},"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true,"conflicts_with":["directory_flat_file","directory_ldap"]},"directory_flat_file":{"nesting_mode":3,"block":{"attributes":{"group_file_uri":{"type":"string","required":true},"password_file_uri":{"type":"string","required":true}}},"optional":true,"conflicts_with":["directory_active_directory","directory_ldap"]},"directory_ldap":{"nesting_mode":3,"block":{"attributes":{"base_dn":{"type":"string","required":true},"certificate_validation_uri":{"type":"string","optional":true},"download_certificate_automatically":{"type":"bool","optional":true,"required_with":["directory_ldap.0.certificate_validation_uri"]},"encrypted":{"type":"bool","optional":true},"server":{"type":"string","required":true}},"block_types":{"bind":{"nesting_mode":3,"block":{"attributes":{"dn":{"type":"string","required":true},"password":{"type":"string","required":true}}},"optional":true,"computed":true}}},"optional":true,"conflicts_with":["directory_active_directory","directory_flat_file"]},"dns":{"nesting_mode":3,"block":{"attributes":{"search_domain":{"type":"string","optional":true},"servers":{"type":["list","string"],"required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_hpc_cache_access_policy":{"block":{"attributes":{"hpc_cache_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"access_rule":{"nesting_mode":4,"block":{"attributes":{"access":{"type":"string","required":true},"anonymous_gid":{"type":"number","optional":true},"anonymous_uid":{"type":"number","optional":true},"filter":{"type":"string","optional":true},"root_squash_enabled":{"type":"bool","optional":true},"scope":{"type":"string","required":true},"submount_access_enabled":{"type":"bool","optional":true},"suid_enabled":{"type":"bool","optional":true}}},"required":true}}}},"azurerm_hpc_cache_blob_nfs_target":{"block":{"attributes":{"access_policy_name":{"type":"string","optional":true,"default":"default"},"cache_name":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace_path":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true},"usage_model":{"type":"string","required":true},"verification_timer_in_seconds":{"type":"number","optional":true},"write_back_timer_in_seconds":{"type":"number","optional":true}}}},"azurerm_hpc_cache_blob_target":{"block":{"attributes":{"access_policy_name":{"type":"string","optional":true,"default":"default"},"cache_name":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace_path":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_container_id":{"type":"string","required":true}}}},"azurerm_hpc_cache_nfs_target":{"block":{"attributes":{"cache_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"target_host_name":{"type":"string","required":true},"usage_model":{"type":"string","required":true},"verification_timer_in_seconds":{"type":"number","optional":true},"write_back_timer_in_seconds":{"type":"number","optional":true}},"block_types":{"namespace_junction":{"nesting_mode":4,"block":{"attributes":{"access_policy_name":{"type":"string","optional":true,"default":"default"},"namespace_path":{"type":"string","required":true},"nfs_export":{"type":"string","required":true},"target_path":{"type":"string","optional":true,"default":""}}},"required":true}}}},"azurerm_image":{"block":{"attributes":{"hyper_v_generation":{"type":"string","optional":true,"default":"V1"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_virtual_machine_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"zone_resilient":{"type":"bool","optional":true,"default":false,"conflicts_with":["source_virtual_machine_id"]}},"block_types":{"data_disk":{"nesting_mode":3,"block":{"attributes":{"blob_uri":{"type":"string","optional":true,"computed":true},"caching":{"type":"string","optional":true,"default":"None"},"disk_encryption_set_id":{"type":"string","optional":true},"lun":{"type":"number","optional":true},"managed_disk_id":{"type":"string","optional":true},"size_gb":{"type":"number","optional":true,"computed":true},"storage_type":{"type":"string","required":true}}},"optional":true,"conflicts_with":["source_virtual_machine_id"]},"os_disk":{"nesting_mode":3,"block":{"attributes":{"blob_uri":{"type":"string","optional":true,"computed":true},"caching":{"type":"string","optional":true,"default":"None"},"disk_encryption_set_id":{"type":"string","optional":true},"managed_disk_id":{"type":"string","optional":true,"computed":true},"os_state":{"type":"string","optional":true},"os_type":{"type":"string","optional":true},"size_gb":{"type":"number","optional":true,"computed":true},"storage_type":{"type":"string","required":true}}},"optional":true,"conflicts_with":["source_virtual_machine_id"]}}}},"azurerm_iot_security_device_group":{"block":{"attributes":{"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"allow_rule":{"nesting_mode":3,"block":{"attributes":{"connection_from_ips_not_allowed":{"type":["set","string"],"optional":true,"at_least_one_of":["allow_rule.0.connection_from_ips_not_allowed","allow_rule.0.connection_to_ips_not_allowed","allow_rule.0.local_users_not_allowed","allow_rule.0.processes_not_allowed"]},"connection_to_ips_not_allowed":{"type":["set","string"],"optional":true,"at_least_one_of":["allow_rule.0.connection_from_ips_not_allowed","allow_rule.0.connection_to_ips_not_allowed","allow_rule.0.local_users_not_allowed","allow_rule.0.processes_not_allowed"]},"local_users_not_allowed":{"type":["set","string"],"optional":true,"at_least_one_of":["allow_rule.0.connection_from_ips_not_allowed","allow_rule.0.connection_to_ips_not_allowed","allow_rule.0.local_users_not_allowed","allow_rule.0.processes_not_allowed"]},"processes_not_allowed":{"type":["set","string"],"optional":true,"at_least_one_of":["allow_rule.0.connection_from_ips_not_allowed","allow_rule.0.connection_to_ips_not_allowed","allow_rule.0.local_users_not_allowed","allow_rule.0.processes_not_allowed"]}}},"optional":true},"range_rule":{"nesting_mode":4,"block":{"attributes":{"duration":{"type":"string","required":true},"max":{"type":"number","required":true},"min":{"type":"number","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_iot_security_solution":{"block":{"attributes":{"disabled_data_sources":{"type":["set","string"],"optional":true},"display_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"events_to_export":{"type":["set","string"],"optional":true},"iothub_ids":{"type":["set","string"],"required":true},"location":{"type":"string","required":true},"log_analytics_workspace_id":{"type":"string","optional":true},"log_unmasked_ips_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"query_for_resources":{"type":"string","optional":true,"computed":true},"query_subscription_ids":{"type":["set","string"],"optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"additional_workspace":{"nesting_mode":4,"block":{"attributes":{"data_types":{"type":["set","string"],"required":true},"workspace_id":{"type":"string","required":true}}},"optional":true},"recommendations_enabled":{"nesting_mode":3,"block":{"attributes":{"acr_authentication":{"type":"bool","optional":true,"default":true},"agent_send_unutilized_msg":{"type":"bool","optional":true,"default":true},"baseline":{"type":"bool","optional":true,"default":true},"edge_hub_mem_optimize":{"type":"bool","optional":true,"default":true},"edge_logging_option":{"type":"bool","optional":true,"default":true},"inconsistent_module_settings":{"type":"bool","optional":true,"default":true},"install_agent":{"type":"bool","optional":true,"default":true},"ip_filter_deny_all":{"type":"bool","optional":true,"default":true},"ip_filter_permissive_rule":{"type":"bool","optional":true,"default":true},"open_ports":{"type":"bool","optional":true,"default":true},"permissive_firewall_policy":{"type":"bool","optional":true,"default":true},"permissive_input_firewall_rules":{"type":"bool","optional":true,"default":true},"permissive_output_firewall_rules":{"type":"bool","optional":true,"default":true},"privileged_docker_options":{"type":"bool","optional":true,"default":true},"shared_credentials":{"type":"bool","optional":true,"default":true},"vulnerable_tls_cipher_suite":{"type":"bool","optional":true,"default":true}}},"optional":true,"computed":true}}}},"azurerm_iotcentral_application":{"block":{"attributes":{"display_name":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"ST1"},"sub_domain":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"template":{"type":"string","optional":true,"default":"iotc-pnp-preview@1.0.0"}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_iotcentral_application_network_rule_set":{"block":{"attributes":{"apply_to_device":{"type":"bool","optional":true,"default":true},"default_action":{"type":"string","optional":true,"default":"Deny"},"iotcentral_application_id":{"type":"string","required":true}},"block_types":{"ip_rule":{"nesting_mode":3,"block":{"attributes":{"ip_mask":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_iotcentral_organization":{"block":{"attributes":{"display_name":{"type":"string","required":true},"iotcentral_application_id":{"type":"string","required":true},"organization_id":{"type":"string","required":true},"parent_organization_id":{"type":"string","optional":true}}}},"azurerm_iothub":{"block":{"attributes":{"endpoint":{"type":["list",["object",{"authentication_type":"string","batch_frequency_in_seconds":"number","connection_string":"string","container_name":"string","encoding":"string","endpoint_uri":"string","entity_path":"string","file_name_format":"string","identity_id":"string","max_chunk_size_in_bytes":"number","name":"string","resource_group_name":"string","subscription_id":"string","type":"string"}]],"optional":true,"computed":true},"enrichment":{"type":["list",["object",{"endpoint_names":["list","string"],"key":"string","value":"string"}]],"optional":true,"computed":true},"event_hub_events_endpoint":{"type":"string","computed":true},"event_hub_events_namespace":{"type":"string","computed":true},"event_hub_events_path":{"type":"string","computed":true},"event_hub_operations_endpoint":{"type":"string","computed":true},"event_hub_operations_path":{"type":"string","computed":true},"event_hub_partition_count":{"type":"number","optional":true,"default":4},"event_hub_retention_in_days":{"type":"number","optional":true,"default":1},"hostname":{"type":"string","computed":true},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"min_tls_version":{"type":"string","optional":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"route":{"type":["list",["object",{"condition":"string","enabled":"bool","endpoint_names":["list","string"],"name":"string","source":"string"}]],"optional":true,"computed":true},"shared_access_policy":{"type":["list",["object",{"key_name":"string","permissions":"string","primary_key":"string","secondary_key":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","computed":true}},"block_types":{"cloud_to_device":{"nesting_mode":3,"block":{"attributes":{"default_ttl":{"type":"string","optional":true,"default":"PT1H"},"max_delivery_count":{"type":"number","optional":true,"default":10}},"block_types":{"feedback":{"nesting_mode":3,"block":{"attributes":{"lock_duration":{"type":"string","optional":true,"default":"PT60S"},"max_delivery_count":{"type":"number","optional":true,"default":10},"time_to_live":{"type":"string","optional":true,"default":"PT1H"}}},"optional":true}}},"optional":true,"computed":true},"fallback_route":{"nesting_mode":3,"block":{"attributes":{"condition":{"type":"string","optional":true,"default":"true"},"enabled":{"type":"bool","optional":true,"default":true},"endpoint_names":{"type":["list","string"],"optional":true,"computed":true},"source":{"type":"string","optional":true,"default":"DeviceMessages"}}},"optional":true,"computed":true},"file_upload":{"nesting_mode":3,"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"connection_string":{"type":"string","required":true},"container_name":{"type":"string","required":true},"default_ttl":{"type":"string","optional":true,"default":"PT1H"},"identity_id":{"type":"string","optional":true},"lock_duration":{"type":"string","optional":true,"default":"PT1M"},"max_delivery_count":{"type":"number","optional":true,"default":10},"notifications":{"type":"bool","optional":true,"default":false},"sas_ttl":{"type":"string","optional":true,"default":"PT1H"}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_rule_set":{"nesting_mode":3,"block":{"attributes":{"apply_to_builtin_eventhub_endpoint":{"type":"bool","optional":true,"default":false},"default_action":{"type":"string","optional":true,"default":"Deny"}},"block_types":{"ip_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"ip_mask":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_iothub_certificate":{"block":{"attributes":{"certificate_content":{"type":"string","required":true},"iothub_name":{"type":"string","required":true},"is_verified":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_iothub_consumer_group":{"block":{"attributes":{"eventhub_endpoint_name":{"type":"string","required":true},"iothub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_iothub_device_update_account":{"block":{"attributes":{"host_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Standard"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_iothub_device_update_instance":{"block":{"attributes":{"device_update_account_id":{"type":"string","required":true},"diagnostic_enabled":{"type":"bool","optional":true,"default":false},"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"diagnostic_storage_account":{"nesting_mode":3,"block":{"attributes":{"connection_string":{"type":"string","required":true},"id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_iothub_dps":{"block":{"attributes":{"allocation_policy":{"type":"string","optional":true,"default":"Hashed"},"data_residency_enabled":{"type":"bool","optional":true,"default":false},"device_provisioning_host_name":{"type":"string","computed":true},"id_scope":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_operations_host_name":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ip_filter_rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"ip_mask":{"type":"string","required":true},"name":{"type":"string","required":true},"target":{"type":"string","optional":true}}},"optional":true},"linked_hub":{"nesting_mode":3,"block":{"attributes":{"allocation_weight":{"type":"number","optional":true,"default":1},"apply_allocation_policy":{"type":"bool","optional":true,"default":true},"connection_string":{"type":"string","required":true},"hostname":{"type":"string","computed":true},"location":{"type":"string","required":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_iothub_dps_certificate":{"block":{"attributes":{"certificate_content":{"type":"string","required":true},"iot_dps_name":{"type":"string","required":true},"is_verified":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_iothub_dps_shared_access_policy":{"block":{"attributes":{"enrollment_read":{"type":"bool","optional":true,"default":false},"enrollment_write":{"type":"bool","optional":true,"default":false},"iothub_dps_name":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"registration_read":{"type":"bool","optional":true,"default":false},"registration_write":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"service_config":{"type":"bool","optional":true,"default":false}}}},"azurerm_iothub_endpoint_cosmosdb_account":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"container_name":{"type":"string","required":true},"database_name":{"type":"string","required":true},"endpoint_uri":{"type":"string","required":true},"identity_id":{"type":"string","optional":true,"conflicts_with":["primary_key","secondary_key"]},"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true},"partition_key_name":{"type":"string","optional":true,"required_with":["partition_key_template"]},"partition_key_template":{"type":"string","optional":true,"required_with":["partition_key_name"]},"primary_key":{"type":"string","optional":true,"conflicts_with":["identity_id"],"required_with":["secondary_key"]},"resource_group_name":{"type":"string","required":true},"secondary_key":{"type":"string","optional":true,"conflicts_with":["identity_id"],"required_with":["primary_key"]},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_iothub_endpoint_eventhub":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"connection_string":{"type":"string","optional":true,"conflicts_with":["identity_id"],"exactly_one_of":["endpoint_uri","connection_string"]},"endpoint_uri":{"type":"string","optional":true,"exactly_one_of":["endpoint_uri","connection_string"],"required_with":["entity_path"]},"entity_path":{"type":"string","optional":true,"required_with":["endpoint_uri"]},"identity_id":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_iothub_endpoint_servicebus_queue":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"connection_string":{"type":"string","optional":true,"conflicts_with":["identity_id"],"exactly_one_of":["endpoint_uri","connection_string"]},"endpoint_uri":{"type":"string","optional":true,"exactly_one_of":["endpoint_uri","connection_string"],"required_with":["entity_path"]},"entity_path":{"type":"string","optional":true,"required_with":["endpoint_uri"]},"identity_id":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_iothub_endpoint_servicebus_topic":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"connection_string":{"type":"string","optional":true,"conflicts_with":["identity_id"],"exactly_one_of":["endpoint_uri","connection_string"]},"endpoint_uri":{"type":"string","optional":true,"exactly_one_of":["endpoint_uri","connection_string"],"required_with":["entity_path"]},"entity_path":{"type":"string","optional":true,"required_with":["endpoint_uri"]},"identity_id":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"iothub_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_iothub_endpoint_storage_container":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"batch_frequency_in_seconds":{"type":"number","optional":true,"default":300},"connection_string":{"type":"string","optional":true,"conflicts_with":["identity_id"],"exactly_one_of":["endpoint_uri","connection_string"]},"container_name":{"type":"string","required":true},"encoding":{"type":"string","optional":true,"default":"Avro"},"endpoint_uri":{"type":"string","optional":true,"exactly_one_of":["endpoint_uri","connection_string"]},"file_name_format":{"type":"string","optional":true,"default":"{iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}"},"identity_id":{"type":"string","optional":true,"conflicts_with":["connection_string"]},"iothub_id":{"type":"string","required":true},"max_chunk_size_in_bytes":{"type":"number","optional":true,"default":314572800},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_iothub_enrichment":{"block":{"attributes":{"endpoint_names":{"type":["list","string"],"required":true},"iothub_name":{"type":"string","required":true},"key":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_iothub_fallback_route":{"block":{"attributes":{"condition":{"type":"string","optional":true,"default":"true"},"enabled":{"type":"bool","required":true},"endpoint_names":{"type":["list","string"],"required":true},"iothub_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source":{"type":"string","optional":true,"default":"DeviceMessages"}}}},"azurerm_iothub_file_upload":{"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"keyBased"},"connection_string":{"type":"string","required":true},"container_name":{"type":"string","required":true},"default_ttl":{"type":"string","optional":true,"default":"PT1H"},"identity_id":{"type":"string","optional":true},"iothub_id":{"type":"string","required":true},"lock_duration":{"type":"string","optional":true,"default":"PT1M"},"max_delivery_count":{"type":"number","optional":true,"default":10},"notifications_enabled":{"type":"bool","optional":true,"default":false},"sas_ttl":{"type":"string","optional":true,"default":"PT1H"}}}},"azurerm_iothub_route":{"block":{"attributes":{"condition":{"type":"string","optional":true,"default":"true"},"enabled":{"type":"bool","required":true},"endpoint_names":{"type":["list","string"],"required":true},"iothub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source":{"type":"string","required":true}}}},"azurerm_iothub_shared_access_policy":{"block":{"attributes":{"device_connect":{"type":"bool","optional":true,"default":false},"iothub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"registry_read":{"type":"bool","optional":true,"default":false},"registry_write":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"service_connect":{"type":"bool","optional":true,"default":false}}}},"azurerm_ip_group":{"block":{"attributes":{"cidrs":{"type":["set","string"],"optional":true},"firewall_ids":{"type":["list","string"],"computed":true},"firewall_policy_ids":{"type":["list","string"],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_ip_group_cidr":{"block":{"attributes":{"cidr":{"type":"string","required":true},"ip_group_id":{"type":"string","required":true}}}},"azurerm_key_vault":{"block":{"attributes":{"access_policy":{"type":["list",["object",{"application_id":"string","certificate_permissions":["list","string"],"key_permissions":["list","string"],"object_id":"string","secret_permissions":["list","string"],"storage_permissions":["list","string"],"tenant_id":"string"}]],"optional":true,"computed":true},"enable_rbac_authorization":{"type":"bool","optional":true,"computed":true,"conflicts_with":["rbac_authorization_enabled"]},"enabled_for_deployment":{"type":"bool","optional":true},"enabled_for_disk_encryption":{"type":"bool","optional":true},"enabled_for_template_deployment":{"type":"bool","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"purge_protection_enabled":{"type":"bool","optional":true},"rbac_authorization_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["enable_rbac_authorization"]},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"soft_delete_retention_days":{"type":"number","optional":true,"default":90},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","required":true},"vault_uri":{"type":"string","computed":true}},"block_types":{"contact":{"nesting_mode":4,"block":{"attributes":{"email":{"type":"string","required":true},"name":{"type":"string","optional":true},"phone":{"type":"string","optional":true}}},"optional":true,"computed":true},"network_acls":{"nesting_mode":3,"block":{"attributes":{"bypass":{"type":"string","required":true},"default_action":{"type":"string","required":true},"ip_rules":{"type":["set","string"],"optional":true},"virtual_network_subnet_ids":{"type":["set","string"],"optional":true}}},"optional":true,"computed":true}}}},"azurerm_key_vault_access_policy":{"block":{"attributes":{"application_id":{"type":"string","optional":true},"certificate_permissions":{"type":["list","string"],"optional":true},"key_permissions":{"type":["list","string"],"optional":true},"key_vault_id":{"type":"string","required":true},"object_id":{"type":"string","required":true},"secret_permissions":{"type":["list","string"],"optional":true},"storage_permissions":{"type":["list","string"],"optional":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_key_vault_certificate":{"block":{"attributes":{"certificate_attribute":{"type":["list",["object",{"created":"string","enabled":"bool","expires":"string","not_before":"string","recovery_level":"string","updated":"string"}]],"computed":true},"certificate_data":{"type":"string","computed":true},"certificate_data_base64":{"type":"string","computed":true},"key_vault_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"resource_manager_versionless_id":{"type":"string","computed":true},"secret_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"thumbprint":{"type":"string","computed":true},"version":{"type":"string","computed":true},"versionless_id":{"type":"string","computed":true},"versionless_secret_id":{"type":"string","computed":true}},"block_types":{"certificate":{"nesting_mode":3,"block":{"attributes":{"contents":{"type":"string","required":true},"password":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["certificate_policy","certificate"]},"certificate_policy":{"nesting_mode":3,"block":{"block_types":{"issuer_parameters":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}}},"required":true},"key_properties":{"nesting_mode":3,"block":{"attributes":{"curve":{"type":"string","optional":true,"computed":true},"exportable":{"type":"bool","required":true},"key_size":{"type":"number","optional":true,"computed":true},"key_type":{"type":"string","required":true},"reuse_key":{"type":"bool","required":true}}},"required":true},"lifetime_action":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true}}},"required":true},"trigger":{"nesting_mode":3,"block":{"attributes":{"days_before_expiry":{"type":"number","optional":true},"lifetime_percentage":{"type":"number","optional":true}}},"required":true}}},"optional":true},"secret_properties":{"nesting_mode":3,"block":{"attributes":{"content_type":{"type":"string","required":true}}},"required":true},"x509_certificate_properties":{"nesting_mode":3,"block":{"attributes":{"extended_key_usage":{"type":["list","string"],"optional":true,"computed":true},"key_usage":{"type":["set","string"],"required":true},"subject":{"type":"string","required":true},"validity_in_months":{"type":"number","required":true}},"block_types":{"subject_alternative_names":{"nesting_mode":3,"block":{"attributes":{"dns_names":{"type":["set","string"],"optional":true,"at_least_one_of":["certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.emails","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.dns_names","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.upns"]},"emails":{"type":["set","string"],"optional":true,"at_least_one_of":["certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.emails","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.dns_names","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.upns"]},"upns":{"type":["set","string"],"optional":true,"at_least_one_of":["certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.emails","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.dns_names","certificate_policy.0.x509_certificate_properties.0.subject_alternative_names.0.upns"]}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true,"at_least_one_of":["certificate_policy","certificate"]}}}},"azurerm_key_vault_certificate_contacts":{"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"contact":{"nesting_mode":4,"block":{"attributes":{"email":{"type":"string","required":true},"name":{"type":"string","optional":true},"phone":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_key_vault_certificate_issuer":{"block":{"attributes":{"account_id":{"type":"string","optional":true},"key_vault_id":{"type":"string","required":true},"name":{"type":"string","required":true},"org_id":{"type":"string","optional":true},"password":{"type":"string","optional":true},"provider_name":{"type":"string","required":true}},"block_types":{"admin":{"nesting_mode":3,"block":{"attributes":{"email_address":{"type":"string","required":true},"first_name":{"type":"string","optional":true},"last_name":{"type":"string","optional":true},"phone":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_key_vault_key":{"block":{"attributes":{"curve":{"type":"string","optional":true,"computed":true,"conflicts_with":["key_size"]},"e":{"type":"string","computed":true},"expiration_date":{"type":"string","optional":true},"key_opts":{"type":["list","string"],"required":true},"key_size":{"type":"number","optional":true,"conflicts_with":["curve"]},"key_type":{"type":"string","required":true},"key_vault_id":{"type":"string","required":true},"n":{"type":"string","computed":true},"name":{"type":"string","required":true},"not_before_date":{"type":"string","optional":true},"public_key_openssh":{"type":"string","computed":true},"public_key_pem":{"type":"string","computed":true},"resource_id":{"type":"string","computed":true},"resource_versionless_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","computed":true},"versionless_id":{"type":"string","computed":true},"x":{"type":"string","computed":true},"y":{"type":"string","computed":true}},"block_types":{"rotation_policy":{"nesting_mode":3,"block":{"attributes":{"expire_after":{"type":"string","optional":true,"at_least_one_of":["rotation_policy.0.expire_after","rotation_policy.0.automatic"],"required_with":["rotation_policy.0.expire_after","rotation_policy.0.notify_before_expiry"]},"notify_before_expiry":{"type":"string","optional":true,"required_with":["rotation_policy.0.expire_after","rotation_policy.0.notify_before_expiry"]}},"block_types":{"automatic":{"nesting_mode":3,"block":{"attributes":{"time_after_creation":{"type":"string","optional":true,"at_least_one_of":["rotation_policy.0.automatic.0.time_after_creation","rotation_policy.0.automatic.0.time_before_expiry"]},"time_before_expiry":{"type":"string","optional":true,"at_least_one_of":["rotation_policy.0.automatic.0.time_after_creation","rotation_policy.0.automatic.0.time_before_expiry"]}}},"optional":true}}},"optional":true}}}},"azurerm_key_vault_managed_hardware_security_module":{"block":{"attributes":{"admin_object_ids":{"type":["set","string"],"required":true},"hsm_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"purge_protection_enabled":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"security_domain_encrypted_data":{"type":"string","computed":true},"security_domain_key_vault_certificate_ids":{"type":["list","string"],"optional":true,"required_with":["security_domain_quorum"]},"security_domain_quorum":{"type":"number","optional":true,"required_with":["security_domain_key_vault_certificate_ids"]},"sku_name":{"type":"string","required":true},"soft_delete_retention_days":{"type":"number","optional":true,"default":90},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","required":true}},"block_types":{"network_acls":{"nesting_mode":3,"block":{"attributes":{"bypass":{"type":"string","required":true},"default_action":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_key_vault_managed_hardware_security_module_key":{"block":{"attributes":{"curve":{"type":"string","optional":true,"exactly_one_of":["key_size"]},"expiration_date":{"type":"string","optional":true},"key_opts":{"type":["set","string"],"required":true},"key_size":{"type":"number","optional":true,"exactly_one_of":["curve"]},"key_type":{"type":"string","required":true},"managed_hsm_id":{"type":"string","required":true},"name":{"type":"string","required":true},"not_before_date":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"versioned_id":{"type":"string","computed":true}}}},"azurerm_key_vault_managed_hardware_security_module_key_rotation_policy":{"block":{"attributes":{"expire_after":{"type":"string","required":true},"managed_hsm_key_id":{"type":"string","required":true},"time_after_creation":{"type":"string","optional":true,"exactly_one_of":["time_after_creation","time_before_expiry"]},"time_before_expiry":{"type":"string","optional":true,"exactly_one_of":["time_after_creation","time_before_expiry"]}}}},"azurerm_key_vault_managed_hardware_security_module_role_assignment":{"block":{"attributes":{"managed_hsm_id":{"type":"string","required":true},"name":{"type":"string","required":true},"principal_id":{"type":"string","required":true},"resource_id":{"type":"string","computed":true},"role_definition_id":{"type":"string","required":true},"scope":{"type":"string","required":true}}}},"azurerm_key_vault_managed_hardware_security_module_role_definition":{"block":{"attributes":{"description":{"type":"string","optional":true},"managed_hsm_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"role_name":{"type":"string","optional":true},"role_type":{"type":"string","computed":true}},"block_types":{"permission":{"nesting_mode":3,"block":{"attributes":{"actions":{"type":["list","string"],"optional":true},"data_actions":{"type":["set","string"],"optional":true},"not_actions":{"type":["list","string"],"optional":true},"not_data_actions":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_key_vault_managed_storage_account":{"block":{"attributes":{"key_vault_id":{"type":"string","required":true},"name":{"type":"string","required":true},"regenerate_key_automatically":{"type":"bool","optional":true,"default":false,"required_with":["regeneration_period"]},"regeneration_period":{"type":"string","optional":true,"required_with":["regenerate_key_automatically"]},"storage_account_id":{"type":"string","required":true},"storage_account_key":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_key_vault_managed_storage_account_sas_token_definition":{"block":{"attributes":{"managed_storage_account_id":{"type":"string","required":true},"name":{"type":"string","required":true},"sas_template_uri":{"type":"string","required":true},"sas_type":{"type":"string","required":true},"secret_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"validity_period":{"type":"string","required":true}}}},"azurerm_key_vault_secret":{"block":{"attributes":{"content_type":{"type":"string","optional":true},"expiration_date":{"type":"string","optional":true},"key_vault_id":{"type":"string","required":true},"name":{"type":"string","required":true},"not_before_date":{"type":"string","optional":true},"resource_id":{"type":"string","computed":true},"resource_versionless_id":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"value":{"type":"string","optional":true,"exactly_one_of":["value","value_wo"]},"value_wo":{"type":"string","optional":true,"exactly_one_of":["value","value_wo"],"required_with":["value_wo_version"]},"value_wo_version":{"type":"number","optional":true,"required_with":["value_wo"]},"version":{"type":"string","computed":true},"versionless_id":{"type":"string","computed":true}}}},"azurerm_kubernetes_cluster":{"block":{"attributes":{"ai_toolchain_operator_enabled":{"type":"bool","optional":true,"default":false},"automatic_upgrade_channel":{"type":"string","optional":true},"azure_policy_enabled":{"type":"bool","optional":true},"cost_analysis_enabled":{"type":"bool","optional":true},"current_kubernetes_version":{"type":"string","computed":true},"custom_ca_trust_certificates_base64":{"type":["list","string"],"optional":true},"disk_encryption_set_id":{"type":"string","optional":true},"dns_prefix":{"type":"string","optional":true,"exactly_one_of":["dns_prefix","dns_prefix_private_cluster"]},"dns_prefix_private_cluster":{"type":"string","optional":true,"exactly_one_of":["dns_prefix","dns_prefix_private_cluster"]},"edge_zone":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"http_application_routing_enabled":{"type":"bool","optional":true},"http_application_routing_zone_name":{"type":"string","computed":true},"image_cleaner_enabled":{"type":"bool","optional":true},"image_cleaner_interval_hours":{"type":"number","optional":true},"kube_admin_config":{"type":["list",["object",{"client_certificate":"string","client_key":"string","cluster_ca_certificate":"string","host":"string","password":"string","username":"string"}]],"computed":true},"kube_admin_config_raw":{"type":"string","computed":true},"kube_config":{"type":["list",["object",{"client_certificate":"string","client_key":"string","cluster_ca_certificate":"string","host":"string","password":"string","username":"string"}]],"computed":true},"kube_config_raw":{"type":"string","computed":true},"kubernetes_version":{"type":"string","optional":true,"computed":true},"local_account_disabled":{"type":"bool","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"node_os_upgrade_channel":{"type":"string","optional":true,"default":"NodeImage"},"node_resource_group":{"type":"string","optional":true,"computed":true},"node_resource_group_id":{"type":"string","computed":true},"oidc_issuer_enabled":{"type":"bool","optional":true},"oidc_issuer_url":{"type":"string","computed":true},"open_service_mesh_enabled":{"type":"bool","optional":true},"portal_fqdn":{"type":"string","computed":true},"private_cluster_enabled":{"type":"bool","optional":true,"default":false},"private_cluster_public_fqdn_enabled":{"type":"bool","optional":true,"default":false},"private_dns_zone_id":{"type":"string","optional":true,"computed":true},"private_fqdn":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"role_based_access_control_enabled":{"type":"bool","optional":true,"default":true},"run_command_enabled":{"type":"bool","optional":true,"default":true},"sku_tier":{"type":"string","optional":true,"default":"Free"},"support_plan":{"type":"string","optional":true,"default":"KubernetesOfficial"},"tags":{"type":["map","string"],"optional":true},"workload_identity_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"aci_connector_linux":{"nesting_mode":3,"block":{"attributes":{"connector_identity":{"type":["list",["object",{"client_id":"string","object_id":"string","user_assigned_identity_id":"string"}]],"computed":true},"subnet_name":{"type":"string","required":true}}},"optional":true},"api_server_access_profile":{"nesting_mode":3,"block":{"attributes":{"authorized_ip_ranges":{"type":["set","string"],"optional":true},"subnet_id":{"type":"string","optional":true},"virtual_network_integration_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"auto_scaler_profile":{"nesting_mode":3,"block":{"attributes":{"balance_similar_node_groups":{"type":"bool","optional":true,"default":false},"daemonset_eviction_for_empty_nodes_enabled":{"type":"bool","optional":true,"default":false},"daemonset_eviction_for_occupied_nodes_enabled":{"type":"bool","optional":true,"default":true},"empty_bulk_delete_max":{"type":"string","optional":true,"computed":true},"expander":{"type":"string","optional":true,"default":"random"},"ignore_daemonsets_utilization_enabled":{"type":"bool","optional":true,"default":false},"max_graceful_termination_sec":{"type":"string","optional":true,"computed":true},"max_node_provisioning_time":{"type":"string","optional":true,"default":"15m"},"max_unready_nodes":{"type":"number","optional":true,"default":3},"max_unready_percentage":{"type":"number","optional":true,"default":45},"new_pod_scale_up_delay":{"type":"string","optional":true,"computed":true},"scale_down_delay_after_add":{"type":"string","optional":true,"computed":true},"scale_down_delay_after_delete":{"type":"string","optional":true,"computed":true},"scale_down_delay_after_failure":{"type":"string","optional":true,"computed":true},"scale_down_unneeded":{"type":"string","optional":true,"computed":true},"scale_down_unready":{"type":"string","optional":true,"computed":true},"scale_down_utilization_threshold":{"type":"string","optional":true,"computed":true},"scan_interval":{"type":"string","optional":true,"computed":true},"skip_nodes_with_local_storage":{"type":"bool","optional":true},"skip_nodes_with_system_pods":{"type":"bool","optional":true,"default":true}}},"optional":true,"computed":true},"azure_active_directory_role_based_access_control":{"nesting_mode":3,"block":{"attributes":{"admin_group_object_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["azure_active_directory_role_based_access_control.0.tenant_id","azure_active_directory_role_based_access_control.0.admin_group_object_ids"]},"azure_rbac_enabled":{"type":"bool","optional":true},"tenant_id":{"type":"string","optional":true,"computed":true,"at_least_one_of":["azure_active_directory_role_based_access_control.0.tenant_id","azure_active_directory_role_based_access_control.0.admin_group_object_ids"]}}},"optional":true},"bootstrap_profile":{"nesting_mode":3,"block":{"attributes":{"artifact_source":{"type":"string","optional":true,"default":"Direct"},"container_registry_id":{"type":"string","optional":true}}},"optional":true,"computed":true},"confidential_computing":{"nesting_mode":3,"block":{"attributes":{"sgx_quote_helper_enabled":{"type":"bool","required":true}}},"optional":true},"default_node_pool":{"nesting_mode":3,"block":{"attributes":{"auto_scaling_enabled":{"type":"bool","optional":true},"capacity_reservation_group_id":{"type":"string","optional":true},"fips_enabled":{"type":"bool","optional":true},"gpu_driver":{"type":"string","optional":true},"gpu_instance":{"type":"string","optional":true},"host_encryption_enabled":{"type":"bool","optional":true},"host_group_id":{"type":"string","optional":true},"kubelet_disk_type":{"type":"string","optional":true,"computed":true},"max_count":{"type":"number","optional":true},"max_pods":{"type":"number","optional":true,"computed":true},"min_count":{"type":"number","optional":true},"name":{"type":"string","required":true},"node_count":{"type":"number","optional":true,"computed":true},"node_labels":{"type":["map","string"],"optional":true,"computed":true},"node_public_ip_enabled":{"type":"bool","optional":true},"node_public_ip_prefix_id":{"type":"string","optional":true,"required_with":["default_node_pool.0.node_public_ip_enabled"]},"only_critical_addons_enabled":{"type":"bool","optional":true},"orchestrator_version":{"type":"string","optional":true,"computed":true},"os_disk_size_gb":{"type":"number","optional":true,"computed":true},"os_disk_type":{"type":"string","optional":true,"default":"Managed"},"os_sku":{"type":"string","optional":true,"computed":true},"pod_subnet_id":{"type":"string","optional":true},"proximity_placement_group_id":{"type":"string","optional":true},"scale_down_mode":{"type":"string","optional":true,"default":"Delete"},"snapshot_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"temporary_name_for_rotation":{"type":"string","optional":true},"type":{"type":"string","optional":true,"default":"VirtualMachineScaleSets"},"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false},"vm_size":{"type":"string","optional":true,"computed":true},"vnet_subnet_id":{"type":"string","optional":true},"workload_runtime":{"type":"string","optional":true,"computed":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"kubelet_config":{"nesting_mode":3,"block":{"attributes":{"allowed_unsafe_sysctls":{"type":["set","string"],"optional":true},"container_log_max_line":{"type":"number","optional":true},"container_log_max_size_mb":{"type":"number","optional":true},"cpu_cfs_quota_enabled":{"type":"bool","optional":true,"default":true},"cpu_cfs_quota_period":{"type":"string","optional":true},"cpu_manager_policy":{"type":"string","optional":true},"image_gc_high_threshold":{"type":"number","optional":true},"image_gc_low_threshold":{"type":"number","optional":true},"pod_max_pid":{"type":"number","optional":true},"topology_manager_policy":{"type":"string","optional":true}}},"optional":true},"linux_os_config":{"nesting_mode":3,"block":{"attributes":{"swap_file_size_mb":{"type":"number","optional":true},"transparent_huge_page":{"type":"string","optional":true,"computed":true,"conflicts_with":["default_node_pool.0.linux_os_config.0.transparent_huge_page_enabled"]},"transparent_huge_page_defrag":{"type":"string","optional":true},"transparent_huge_page_enabled":{"type":"string","optional":true,"computed":true,"conflicts_with":["default_node_pool.0.linux_os_config.0.transparent_huge_page"]}},"block_types":{"sysctl_config":{"nesting_mode":3,"block":{"attributes":{"fs_aio_max_nr":{"type":"number","optional":true},"fs_file_max":{"type":"number","optional":true},"fs_inotify_max_user_watches":{"type":"number","optional":true},"fs_nr_open":{"type":"number","optional":true},"kernel_threads_max":{"type":"number","optional":true},"net_core_netdev_max_backlog":{"type":"number","optional":true},"net_core_optmem_max":{"type":"number","optional":true},"net_core_rmem_default":{"type":"number","optional":true},"net_core_rmem_max":{"type":"number","optional":true},"net_core_somaxconn":{"type":"number","optional":true},"net_core_wmem_default":{"type":"number","optional":true},"net_core_wmem_max":{"type":"number","optional":true},"net_ipv4_ip_local_port_range_max":{"type":"number","optional":true},"net_ipv4_ip_local_port_range_min":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh1":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh2":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh3":{"type":"number","optional":true},"net_ipv4_tcp_fin_timeout":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_intvl":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_probes":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_time":{"type":"number","optional":true},"net_ipv4_tcp_max_syn_backlog":{"type":"number","optional":true},"net_ipv4_tcp_max_tw_buckets":{"type":"number","optional":true},"net_ipv4_tcp_tw_reuse":{"type":"bool","optional":true},"net_netfilter_nf_conntrack_buckets":{"type":"number","optional":true},"net_netfilter_nf_conntrack_max":{"type":"number","optional":true},"vm_max_map_count":{"type":"number","optional":true},"vm_swappiness":{"type":"number","optional":true},"vm_vfs_cache_pressure":{"type":"number","optional":true}}},"optional":true}}},"optional":true},"node_network_profile":{"nesting_mode":3,"block":{"attributes":{"application_security_group_ids":{"type":["list","string"],"optional":true},"node_public_ip_tags":{"type":["map","string"],"optional":true}},"block_types":{"allowed_host_ports":{"nesting_mode":3,"block":{"attributes":{"port_end":{"type":"number","optional":true},"port_start":{"type":"number","optional":true},"protocol":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"upgrade_settings":{"nesting_mode":3,"block":{"attributes":{"drain_timeout_in_minutes":{"type":"number","optional":true},"max_surge":{"type":"string","required":true},"node_soak_duration_in_minutes":{"type":"number","optional":true},"undrainable_node_behavior":{"type":"string","optional":true}}},"optional":true}}},"required":true},"http_proxy_config":{"nesting_mode":3,"block":{"attributes":{"http_proxy":{"type":"string","optional":true},"https_proxy":{"type":"string","optional":true},"no_proxy":{"type":["set","string"],"optional":true},"trusted_ca":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"ingress_application_gateway":{"nesting_mode":3,"block":{"attributes":{"effective_gateway_id":{"type":"string","computed":true},"gateway_id":{"type":"string","optional":true,"conflicts_with":["ingress_application_gateway.0.subnet_cidr","ingress_application_gateway.0.subnet_id"],"at_least_one_of":["ingress_application_gateway.0.gateway_id","ingress_application_gateway.0.subnet_cidr","ingress_application_gateway.0.subnet_id"]},"gateway_name":{"type":"string","optional":true},"ingress_application_gateway_identity":{"type":["list",["object",{"client_id":"string","object_id":"string","user_assigned_identity_id":"string"}]],"computed":true},"subnet_cidr":{"type":"string","optional":true,"conflicts_with":["ingress_application_gateway.0.gateway_id","ingress_application_gateway.0.subnet_id"],"at_least_one_of":["ingress_application_gateway.0.gateway_id","ingress_application_gateway.0.subnet_cidr","ingress_application_gateway.0.subnet_id"]},"subnet_id":{"type":"string","optional":true,"conflicts_with":["ingress_application_gateway.0.gateway_id","ingress_application_gateway.0.subnet_cidr"],"at_least_one_of":["ingress_application_gateway.0.gateway_id","ingress_application_gateway.0.subnet_cidr","ingress_application_gateway.0.subnet_id"]}}},"optional":true},"key_management_service":{"nesting_mode":3,"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"key_vault_network_access":{"type":"string","optional":true,"default":"Public"}}},"optional":true},"key_vault_secrets_provider":{"nesting_mode":3,"block":{"attributes":{"secret_identity":{"type":["list",["object",{"client_id":"string","object_id":"string","user_assigned_identity_id":"string"}]],"computed":true},"secret_rotation_enabled":{"type":"bool","optional":true,"default":false,"at_least_one_of":["key_vault_secrets_provider.0.secret_rotation_enabled","key_vault_secrets_provider.0.secret_rotation_interval"]},"secret_rotation_interval":{"type":"string","optional":true,"default":"2m","at_least_one_of":["key_vault_secrets_provider.0.secret_rotation_enabled","key_vault_secrets_provider.0.secret_rotation_interval"]}}},"optional":true},"kubelet_identity":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true,"computed":true,"required_with":["kubelet_identity.0.object_id","kubelet_identity.0.user_assigned_identity_id","identity.0.identity_ids"]},"object_id":{"type":"string","optional":true,"computed":true,"required_with":["kubelet_identity.0.client_id","kubelet_identity.0.user_assigned_identity_id","identity.0.identity_ids"]},"user_assigned_identity_id":{"type":"string","optional":true,"computed":true,"required_with":["kubelet_identity.0.client_id","kubelet_identity.0.object_id","identity.0.identity_ids"]}}},"optional":true,"computed":true},"linux_profile":{"nesting_mode":3,"block":{"attributes":{"admin_username":{"type":"string","required":true}},"block_types":{"ssh_key":{"nesting_mode":3,"block":{"attributes":{"key_data":{"type":"string","required":true}}},"required":true}}},"optional":true},"maintenance_window":{"nesting_mode":3,"block":{"block_types":{"allowed":{"nesting_mode":4,"block":{"attributes":{"day":{"type":"string","required":true},"hours":{"type":["set","number"],"required":true}}},"optional":true,"at_least_one_of":["maintenance_window.0.allowed","maintenance_window.0.not_allowed"]},"not_allowed":{"nesting_mode":4,"block":{"attributes":{"end":{"type":"string","required":true},"start":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["maintenance_window.0.allowed","maintenance_window.0.not_allowed"]}}},"optional":true},"maintenance_window_auto_upgrade":{"nesting_mode":3,"block":{"attributes":{"day_of_month":{"type":"number","optional":true},"day_of_week":{"type":"string","optional":true},"duration":{"type":"number","required":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","required":true},"start_date":{"type":"string","optional":true,"computed":true},"start_time":{"type":"string","optional":true},"utc_offset":{"type":"string","optional":true},"week_index":{"type":"string","optional":true}},"block_types":{"not_allowed":{"nesting_mode":4,"block":{"attributes":{"end":{"type":"string","required":true},"start":{"type":"string","required":true}}},"optional":true}}},"optional":true},"maintenance_window_node_os":{"nesting_mode":3,"block":{"attributes":{"day_of_month":{"type":"number","optional":true},"day_of_week":{"type":"string","optional":true},"duration":{"type":"number","required":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","required":true},"start_date":{"type":"string","optional":true,"computed":true},"start_time":{"type":"string","optional":true},"utc_offset":{"type":"string","optional":true},"week_index":{"type":"string","optional":true}},"block_types":{"not_allowed":{"nesting_mode":4,"block":{"attributes":{"end":{"type":"string","required":true},"start":{"type":"string","required":true}}},"optional":true}}},"optional":true},"microsoft_defender":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true}}},"optional":true},"monitor_metrics":{"nesting_mode":3,"block":{"attributes":{"annotations_allowed":{"type":"string","optional":true},"labels_allowed":{"type":"string","optional":true}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"dns_service_ip":{"type":"string","optional":true,"computed":true},"ip_versions":{"type":["list","string"],"optional":true,"computed":true},"load_balancer_sku":{"type":"string","optional":true,"default":"standard"},"network_data_plane":{"type":"string","optional":true,"default":"azure"},"network_mode":{"type":"string","optional":true,"computed":true},"network_plugin":{"type":"string","required":true},"network_plugin_mode":{"type":"string","optional":true},"network_policy":{"type":"string","optional":true,"computed":true},"outbound_type":{"type":"string","optional":true,"default":"loadBalancer"},"pod_cidr":{"type":"string","optional":true,"computed":true},"pod_cidrs":{"type":["list","string"],"optional":true,"computed":true},"service_cidr":{"type":"string","optional":true,"computed":true},"service_cidrs":{"type":["list","string"],"optional":true,"computed":true}},"block_types":{"advanced_networking":{"nesting_mode":3,"block":{"attributes":{"observability_enabled":{"type":"bool","optional":true,"default":false,"at_least_one_of":["network_profile.0.advanced_networking.0.observability_enabled","network_profile.0.advanced_networking.0.security_enabled"]},"security_enabled":{"type":"bool","optional":true,"default":false,"at_least_one_of":["network_profile.0.advanced_networking.0.observability_enabled","network_profile.0.advanced_networking.0.security_enabled"]}}},"optional":true},"load_balancer_profile":{"nesting_mode":3,"block":{"attributes":{"backend_pool_type":{"type":"string","optional":true,"default":"NodeIPConfiguration"},"effective_outbound_ips":{"type":["set","string"],"computed":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":30},"managed_outbound_ip_count":{"type":"number","optional":true,"computed":true,"conflicts_with":["network_profile.0.load_balancer_profile.0.outbound_ip_prefix_ids","network_profile.0.load_balancer_profile.0.outbound_ip_address_ids"]},"managed_outbound_ipv6_count":{"type":"number","optional":true,"computed":true,"conflicts_with":["network_profile.0.load_balancer_profile.0.outbound_ip_prefix_ids","network_profile.0.load_balancer_profile.0.outbound_ip_address_ids"]},"outbound_ip_address_ids":{"type":["set","string"],"optional":true,"conflicts_with":["network_profile.0.load_balancer_profile.0.managed_outbound_ip_count","network_profile.0.load_balancer_profile.0.outbound_ip_prefix_ids"]},"outbound_ip_prefix_ids":{"type":["set","string"],"optional":true,"conflicts_with":["network_profile.0.load_balancer_profile.0.managed_outbound_ip_count","network_profile.0.load_balancer_profile.0.outbound_ip_address_ids"]},"outbound_ports_allocated":{"type":"number","optional":true,"default":0}}},"optional":true,"computed":true},"nat_gateway_profile":{"nesting_mode":3,"block":{"attributes":{"effective_outbound_ips":{"type":["set","string"],"computed":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"managed_outbound_ip_count":{"type":"number","optional":true,"computed":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"oms_agent":{"nesting_mode":3,"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"msi_auth_for_monitoring_enabled":{"type":"bool","optional":true},"oms_agent_identity":{"type":["list",["object",{"client_id":"string","object_id":"string","user_assigned_identity_id":"string"}]],"computed":true}}},"optional":true},"service_mesh_profile":{"nesting_mode":3,"block":{"attributes":{"external_ingress_gateway_enabled":{"type":"bool","optional":true},"internal_ingress_gateway_enabled":{"type":"bool","optional":true},"mode":{"type":"string","required":true},"revisions":{"type":["list","string"],"required":true}},"block_types":{"certificate_authority":{"nesting_mode":3,"block":{"attributes":{"cert_chain_object_name":{"type":"string","required":true},"cert_object_name":{"type":"string","required":true},"key_object_name":{"type":"string","required":true},"key_vault_id":{"type":"string","required":true},"root_cert_object_name":{"type":"string","required":true}}},"optional":true}}},"optional":true},"service_principal":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["identity","service_principal"]},"storage_profile":{"nesting_mode":3,"block":{"attributes":{"blob_driver_enabled":{"type":"bool","optional":true,"default":false},"disk_driver_enabled":{"type":"bool","optional":true,"default":true},"file_driver_enabled":{"type":"bool","optional":true,"default":true},"snapshot_controller_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true},"upgrade_override":{"nesting_mode":3,"block":{"attributes":{"effective_until":{"type":"string","optional":true},"force_upgrade_enabled":{"type":"bool","required":true}}},"optional":true},"web_app_routing":{"nesting_mode":3,"block":{"attributes":{"default_nginx_controller":{"type":"string","optional":true,"default":"AnnotationControlled"},"dns_zone_ids":{"type":["list","string"],"required":true},"web_app_routing_identity":{"type":["list",["object",{"client_id":"string","object_id":"string","user_assigned_identity_id":"string"}]],"computed":true}}},"optional":true},"windows_profile":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","required":true},"admin_username":{"type":"string","required":true},"license":{"type":"string","optional":true}},"block_types":{"gmsa":{"nesting_mode":3,"block":{"attributes":{"dns_server":{"type":"string","required":true},"root_domain":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"workload_autoscaler_profile":{"nesting_mode":3,"block":{"attributes":{"keda_enabled":{"type":"bool","optional":true,"default":false},"vertical_pod_autoscaler_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true}}}},"azurerm_kubernetes_cluster_extension":{"block":{"attributes":{"aks_assigned_identity":{"type":["list",["object",{"principal_id":"string","tenant_id":"string","type":"string"}]],"computed":true},"cluster_id":{"type":"string","required":true},"configuration_protected_settings":{"type":["map","string"],"optional":true},"configuration_settings":{"type":["map","string"],"optional":true},"current_version":{"type":"string","computed":true},"extension_type":{"type":"string","required":true},"name":{"type":"string","required":true},"release_namespace":{"type":"string","optional":true,"computed":true,"conflicts_with":["target_namespace"]},"release_train":{"type":"string","optional":true,"computed":true,"conflicts_with":["version"]},"target_namespace":{"type":"string","optional":true,"computed":true,"conflicts_with":["release_namespace"]},"version":{"type":"string","optional":true,"conflicts_with":["release_train"]}},"block_types":{"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"promotion_code":{"type":"string","optional":true},"publisher":{"type":"string","required":true},"version":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_kubernetes_cluster_node_pool":{"block":{"attributes":{"auto_scaling_enabled":{"type":"bool","optional":true},"capacity_reservation_group_id":{"type":"string","optional":true},"eviction_policy":{"type":"string","optional":true},"fips_enabled":{"type":"bool","optional":true},"gpu_driver":{"type":"string","optional":true},"gpu_instance":{"type":"string","optional":true},"host_encryption_enabled":{"type":"bool","optional":true},"host_group_id":{"type":"string","optional":true},"kubelet_disk_type":{"type":"string","optional":true,"computed":true},"kubernetes_cluster_id":{"type":"string","required":true},"max_count":{"type":"number","optional":true},"max_pods":{"type":"number","optional":true,"computed":true},"min_count":{"type":"number","optional":true},"mode":{"type":"string","optional":true,"default":"User"},"name":{"type":"string","required":true},"node_count":{"type":"number","optional":true,"computed":true},"node_labels":{"type":["map","string"],"optional":true,"computed":true},"node_public_ip_enabled":{"type":"bool","optional":true},"node_public_ip_prefix_id":{"type":"string","optional":true,"required_with":["node_public_ip_enabled"]},"node_taints":{"type":["list","string"],"optional":true},"orchestrator_version":{"type":"string","optional":true,"computed":true},"os_disk_size_gb":{"type":"number","optional":true,"computed":true},"os_disk_type":{"type":"string","optional":true,"default":"Managed"},"os_sku":{"type":"string","optional":true,"computed":true},"os_type":{"type":"string","optional":true,"default":"Linux"},"pod_subnet_id":{"type":"string","optional":true},"priority":{"type":"string","optional":true,"default":"Regular"},"proximity_placement_group_id":{"type":"string","optional":true},"scale_down_mode":{"type":"string","optional":true,"default":"Delete"},"snapshot_id":{"type":"string","optional":true},"spot_max_price":{"type":"number","optional":true,"default":-1},"tags":{"type":["map","string"],"optional":true},"temporary_name_for_rotation":{"type":"string","optional":true},"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false},"vm_size":{"type":"string","optional":true,"computed":true},"vnet_subnet_id":{"type":"string","optional":true},"workload_runtime":{"type":"string","optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"kubelet_config":{"nesting_mode":3,"block":{"attributes":{"allowed_unsafe_sysctls":{"type":["set","string"],"optional":true},"container_log_max_line":{"type":"number","optional":true},"container_log_max_size_mb":{"type":"number","optional":true},"cpu_cfs_quota_enabled":{"type":"bool","optional":true,"default":true},"cpu_cfs_quota_period":{"type":"string","optional":true},"cpu_manager_policy":{"type":"string","optional":true},"image_gc_high_threshold":{"type":"number","optional":true},"image_gc_low_threshold":{"type":"number","optional":true},"pod_max_pid":{"type":"number","optional":true},"topology_manager_policy":{"type":"string","optional":true}}},"optional":true},"linux_os_config":{"nesting_mode":3,"block":{"attributes":{"swap_file_size_mb":{"type":"number","optional":true},"transparent_huge_page":{"type":"string","optional":true,"computed":true,"conflicts_with":["linux_os_config.0.transparent_huge_page_enabled"]},"transparent_huge_page_defrag":{"type":"string","optional":true},"transparent_huge_page_enabled":{"type":"string","optional":true,"computed":true,"conflicts_with":["linux_os_config.0.transparent_huge_page"]}},"block_types":{"sysctl_config":{"nesting_mode":3,"block":{"attributes":{"fs_aio_max_nr":{"type":"number","optional":true},"fs_file_max":{"type":"number","optional":true},"fs_inotify_max_user_watches":{"type":"number","optional":true},"fs_nr_open":{"type":"number","optional":true},"kernel_threads_max":{"type":"number","optional":true},"net_core_netdev_max_backlog":{"type":"number","optional":true},"net_core_optmem_max":{"type":"number","optional":true},"net_core_rmem_default":{"type":"number","optional":true},"net_core_rmem_max":{"type":"number","optional":true},"net_core_somaxconn":{"type":"number","optional":true},"net_core_wmem_default":{"type":"number","optional":true},"net_core_wmem_max":{"type":"number","optional":true},"net_ipv4_ip_local_port_range_max":{"type":"number","optional":true},"net_ipv4_ip_local_port_range_min":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh1":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh2":{"type":"number","optional":true},"net_ipv4_neigh_default_gc_thresh3":{"type":"number","optional":true},"net_ipv4_tcp_fin_timeout":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_intvl":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_probes":{"type":"number","optional":true},"net_ipv4_tcp_keepalive_time":{"type":"number","optional":true},"net_ipv4_tcp_max_syn_backlog":{"type":"number","optional":true},"net_ipv4_tcp_max_tw_buckets":{"type":"number","optional":true},"net_ipv4_tcp_tw_reuse":{"type":"bool","optional":true},"net_netfilter_nf_conntrack_buckets":{"type":"number","optional":true},"net_netfilter_nf_conntrack_max":{"type":"number","optional":true},"vm_max_map_count":{"type":"number","optional":true},"vm_swappiness":{"type":"number","optional":true},"vm_vfs_cache_pressure":{"type":"number","optional":true}}},"optional":true}}},"optional":true},"node_network_profile":{"nesting_mode":3,"block":{"attributes":{"application_security_group_ids":{"type":["list","string"],"optional":true},"node_public_ip_tags":{"type":["map","string"],"optional":true}},"block_types":{"allowed_host_ports":{"nesting_mode":3,"block":{"attributes":{"port_end":{"type":"number","optional":true},"port_start":{"type":"number","optional":true},"protocol":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"upgrade_settings":{"nesting_mode":3,"block":{"attributes":{"drain_timeout_in_minutes":{"type":"number","optional":true},"max_surge":{"type":"string","optional":true,"exactly_one_of":["upgrade_settings.0.max_surge","upgrade_settings.0.max_unavailable"]},"max_unavailable":{"type":"string","optional":true,"exactly_one_of":["upgrade_settings.0.max_surge","upgrade_settings.0.max_unavailable"]},"node_soak_duration_in_minutes":{"type":"number","optional":true},"undrainable_node_behavior":{"type":"string","optional":true}}},"optional":true},"windows_profile":{"nesting_mode":3,"block":{"attributes":{"outbound_nat_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_kubernetes_cluster_trusted_access_role_binding":{"block":{"attributes":{"kubernetes_cluster_id":{"type":"string","required":true},"name":{"type":"string","required":true},"roles":{"type":["list","string"],"required":true},"source_resource_id":{"type":"string","required":true}}}},"azurerm_kubernetes_fleet_manager":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"hub_profile":{"nesting_mode":3,"block":{"attributes":{"dns_prefix":{"type":"string","required":true},"fqdn":{"type":"string","computed":true},"kubernetes_version":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_kubernetes_fleet_member":{"block":{"attributes":{"group":{"type":"string","optional":true},"kubernetes_cluster_id":{"type":"string","required":true},"kubernetes_fleet_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_kubernetes_fleet_update_run":{"block":{"attributes":{"fleet_update_strategy_id":{"type":"string","optional":true,"conflicts_with":["stage"]},"kubernetes_fleet_manager_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"managed_cluster_update":{"nesting_mode":3,"block":{"block_types":{"node_image_selection":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}}},"optional":true},"upgrade":{"nesting_mode":3,"block":{"attributes":{"kubernetes_version":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}},"required":true},"stage":{"nesting_mode":3,"block":{"attributes":{"after_stage_wait_in_seconds":{"type":"number","optional":true},"name":{"type":"string","required":true}},"block_types":{"group":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}}},"required":true}}},"optional":true,"conflicts_with":["fleet_update_strategy_id"]}}}},"azurerm_kubernetes_fleet_update_strategy":{"block":{"attributes":{"kubernetes_fleet_manager_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"stage":{"nesting_mode":3,"block":{"attributes":{"after_stage_wait_in_seconds":{"type":"number","optional":true},"name":{"type":"string","required":true}},"block_types":{"group":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_kubernetes_flux_configuration":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"continuous_reconciliation_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"namespace":{"type":"string","required":true},"scope":{"type":"string","optional":true,"default":"namespace"}},"block_types":{"blob_storage":{"nesting_mode":3,"block":{"attributes":{"account_key":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.managed_identity","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"container_id":{"type":"string","required":true},"local_auth_reference":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.managed_identity","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"sas_token":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.managed_identity","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600}},"block_types":{"managed_identity":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.managed_identity","blob_storage.0.sas_token","blob_storage.0.service_principal"]},"service_principal":{"nesting_mode":3,"block":{"attributes":{"client_certificate_base64":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.service_principal.0.client_certificate_base64","blob_storage.0.service_principal.0.client_secret"]},"client_certificate_password":{"type":"string","optional":true,"required_with":["blob_storage.0.service_principal.0.client_certificate_base64"]},"client_certificate_send_chain":{"type":"bool","optional":true,"default":false},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["blob_storage.0.service_principal.0.client_certificate_base64","blob_storage.0.service_principal.0.client_secret"]},"tenant_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage.0.account_key","blob_storage.0.local_auth_reference","blob_storage.0.managed_identity","blob_storage.0.sas_token","blob_storage.0.service_principal"]}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"bucket":{"nesting_mode":3,"block":{"attributes":{"access_key":{"type":"string","optional":true,"exactly_one_of":["bucket.0.access_key","bucket.0.local_auth_reference"],"required_with":["bucket.0.secret_key_base64"]},"bucket_name":{"type":"string","required":true},"local_auth_reference":{"type":"string","optional":true,"exactly_one_of":["bucket.0.access_key","bucket.0.local_auth_reference"]},"secret_key_base64":{"type":"string","optional":true,"required_with":["bucket.0.access_key"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600},"tls_enabled":{"type":"bool","optional":true,"default":true},"url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"git_repository":{"nesting_mode":3,"block":{"attributes":{"https_ca_cert_base64":{"type":"string","optional":true,"required_with":["git_repository.0.https_user"]},"https_key_base64":{"type":"string","optional":true,"required_with":["git_repository.0.https_user"]},"https_user":{"type":"string","optional":true,"conflicts_with":["git_repository.0.local_auth_reference","git_repository.0.ssh_private_key_base64","git_repository.0.ssh_known_hosts_base64"],"required_with":["git_repository.0.https_key_base64"]},"local_auth_reference":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.ssh_private_key_base64","git_repository.0.ssh_known_hosts_base64"]},"provider":{"type":"string","optional":true},"reference_type":{"type":"string","required":true},"reference_value":{"type":"string","required":true},"ssh_known_hosts_base64":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.local_auth_reference"]},"ssh_private_key_base64":{"type":"string","optional":true,"conflicts_with":["git_repository.0.https_user","git_repository.0.local_auth_reference"]},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600},"url":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["blob_storage","bucket","git_repository"]},"kustomizations":{"nesting_mode":4,"block":{"attributes":{"depends_on":{"type":["list","string"],"optional":true},"garbage_collection_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"path":{"type":"string","optional":true},"recreating_enabled":{"type":"bool","optional":true,"default":false},"retry_interval_in_seconds":{"type":"number","optional":true,"default":600},"sync_interval_in_seconds":{"type":"number","optional":true,"default":600},"timeout_in_seconds":{"type":"number","optional":true,"default":600},"wait":{"type":"bool","optional":true,"default":true}},"block_types":{"post_build":{"nesting_mode":3,"block":{"attributes":{"substitute":{"type":["map","string"],"optional":true}},"block_types":{"substitute_from":{"nesting_mode":3,"block":{"attributes":{"kind":{"type":"string","required":true},"name":{"type":"string","required":true},"optional":{"type":"bool","optional":true,"default":false}}},"optional":true}}},"optional":true}}},"required":true}}}},"azurerm_kusto_attached_database_configuration":{"block":{"attributes":{"attached_database_names":{"type":["list","string"],"computed":true},"cluster_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["cluster_id","cluster_resource_id"]},"cluster_name":{"type":"string","required":true},"cluster_resource_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["cluster_id","cluster_resource_id"]},"database_name":{"type":"string","required":true},"default_principal_modification_kind":{"type":"string","optional":true,"default":"None"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"sharing":{"nesting_mode":3,"block":{"attributes":{"external_tables_to_exclude":{"type":["set","string"],"optional":true},"external_tables_to_include":{"type":["set","string"],"optional":true},"materialized_views_to_exclude":{"type":["set","string"],"optional":true},"materialized_views_to_include":{"type":["set","string"],"optional":true},"tables_to_exclude":{"type":["set","string"],"optional":true},"tables_to_include":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_kusto_cluster":{"block":{"attributes":{"allowed_fqdns":{"type":["list","string"],"optional":true},"allowed_ip_ranges":{"type":["list","string"],"optional":true},"auto_stop_enabled":{"type":"bool","optional":true,"default":true},"data_ingestion_uri":{"type":"string","computed":true},"disk_encryption_enabled":{"type":"bool","optional":true,"default":false},"double_encryption_enabled":{"type":"bool","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_network_access_restricted":{"type":"bool","optional":true,"default":false},"public_ip_type":{"type":"string","optional":true,"default":"IPv4"},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"purge_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"streaming_ingestion_enabled":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true},"trusted_external_tenants":{"type":["list","string"],"optional":true,"computed":true},"uri":{"type":"string","computed":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"language_extension":{"nesting_mode":3,"block":{"attributes":{"image":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"computed":true,"conflicts_with":["language_extensions"]},"language_extensions":{"nesting_mode":3,"block":{"attributes":{"image":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"computed":true,"conflicts_with":["language_extension"]},"optimized_auto_scale":{"nesting_mode":3,"block":{"attributes":{"maximum_instances":{"type":"number","required":true},"minimum_instances":{"type":"number","required":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true}}},"required":true},"virtual_network_configuration":{"nesting_mode":3,"block":{"attributes":{"data_management_public_ip_id":{"type":"string","required":true},"engine_public_ip_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_kusto_cluster_customer_managed_key":{"block":{"attributes":{"cluster_id":{"type":"string","required":true},"key_name":{"type":"string","optional":true,"required_with":["key_vault_id"]},"key_vault_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_id"]},"key_version":{"type":"string","optional":true},"managed_hsm_key_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_id"]},"user_identity":{"type":"string","optional":true}}}},"azurerm_kusto_cluster_managed_private_endpoint":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"private_link_resource_id":{"type":"string","required":true},"private_link_resource_region":{"type":"string","optional":true},"request_message":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_kusto_cluster_principal_assignment":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"name":{"type":"string","required":true},"principal_id":{"type":"string","required":true},"principal_name":{"type":"string","computed":true},"principal_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"role":{"type":"string","required":true},"tenant_id":{"type":"string","required":true},"tenant_name":{"type":"string","computed":true}}}},"azurerm_kusto_cosmosdb_data_connection":{"block":{"attributes":{"cosmosdb_container_id":{"type":"string","required":true},"kusto_database_id":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_identity_id":{"type":"string","required":true},"mapping_rule_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"retrieval_start_date":{"type":"string","optional":true},"table_name":{"type":"string","required":true}}}},"azurerm_kusto_database":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"hot_cache_period":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"size":{"type":"number","computed":true},"soft_delete_period":{"type":"string","optional":true}}}},"azurerm_kusto_database_principal_assignment":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"database_name":{"type":"string","required":true},"name":{"type":"string","required":true},"principal_id":{"type":"string","required":true},"principal_name":{"type":"string","computed":true},"principal_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"role":{"type":"string","required":true},"tenant_id":{"type":"string","required":true},"tenant_name":{"type":"string","computed":true}}}},"azurerm_kusto_eventgrid_data_connection":{"block":{"attributes":{"blob_storage_event_type":{"type":"string","optional":true,"default":"Microsoft.Storage.BlobCreated"},"cluster_name":{"type":"string","required":true},"data_format":{"type":"string","optional":true},"database_name":{"type":"string","required":true},"database_routing_type":{"type":"string","optional":true,"default":"Single"},"eventgrid_event_subscription_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["eventgrid_resource_id"]},"eventgrid_resource_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["eventgrid_event_subscription_id"]},"eventhub_consumer_group_name":{"type":"string","required":true},"eventhub_id":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_identity_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["managed_identity_resource_id"]},"managed_identity_resource_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["managed_identity_id"]},"mapping_rule_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"skip_first_record":{"type":"bool","optional":true,"default":false},"storage_account_id":{"type":"string","required":true},"table_name":{"type":"string","optional":true}}}},"azurerm_kusto_eventhub_data_connection":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"compression":{"type":"string","optional":true,"default":"None"},"consumer_group":{"type":"string","required":true},"data_format":{"type":"string","optional":true},"database_name":{"type":"string","required":true},"database_routing_type":{"type":"string","optional":true,"default":"Single"},"event_system_properties":{"type":["list","string"],"optional":true,"computed":true},"eventhub_id":{"type":"string","required":true},"identity_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"mapping_rule_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"table_name":{"type":"string","optional":true}}}},"azurerm_kusto_iothub_data_connection":{"block":{"attributes":{"cluster_name":{"type":"string","required":true},"consumer_group":{"type":"string","required":true},"data_format":{"type":"string","optional":true},"database_name":{"type":"string","required":true},"database_routing_type":{"type":"string","optional":true,"default":"Single"},"event_system_properties":{"type":["set","string"],"optional":true},"iothub_id":{"type":"string","required":true},"location":{"type":"string","required":true},"mapping_rule_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"shared_access_policy_name":{"type":"string","required":true},"table_name":{"type":"string","optional":true}}}},"azurerm_kusto_script":{"block":{"attributes":{"continue_on_errors_enabled":{"type":"bool","optional":true,"default":false},"database_id":{"type":"string","required":true},"force_an_update_when_value_changed":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"sas_token":{"type":"string","optional":true,"required_with":["url"]},"script_content":{"type":"string","optional":true,"exactly_one_of":["url","script_content"]},"url":{"type":"string","optional":true,"exactly_one_of":["url","script_content"],"required_with":["sas_token"]}}}},"azurerm_lb":{"block":{"attributes":{"edge_zone":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_ip_address":{"type":"string","computed":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_address_id":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Standard"},"sku_tier":{"type":"string","optional":true,"default":"Regional"},"subnet_id":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"frontend_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"gateway_load_balancer_frontend_ip_configuration_id":{"type":"string","optional":true,"computed":true},"id":{"type":"string","computed":true},"inbound_nat_rules":{"type":["set","string"],"computed":true},"load_balancer_rules":{"type":["set","string"],"computed":true},"name":{"type":"string","required":true},"outbound_rules":{"type":["set","string"],"computed":true},"private_ip_address":{"type":"string","optional":true,"computed":true},"private_ip_address_allocation":{"type":"string","optional":true,"computed":true},"private_ip_address_version":{"type":"string","optional":true,"computed":true},"public_ip_address_id":{"type":"string","optional":true},"public_ip_prefix_id":{"type":"string","optional":true,"computed":true},"subnet_id":{"type":"string","optional":true},"zones":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_lb_backend_address_pool":{"block":{"attributes":{"backend_ip_configurations":{"type":["list","string"],"computed":true},"inbound_nat_rules":{"type":["list","string"],"computed":true},"load_balancing_rules":{"type":["list","string"],"computed":true},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_rules":{"type":["list","string"],"computed":true},"synchronous_mode":{"type":"string","optional":true,"required_with":["virtual_network_id"]},"virtual_network_id":{"type":"string","optional":true}},"block_types":{"tunnel_interface":{"nesting_mode":3,"block":{"attributes":{"identifier":{"type":"number","required":true},"port":{"type":"number","required":true},"protocol":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_lb_backend_address_pool_address":{"block":{"attributes":{"backend_address_ip_configuration_id":{"type":"string","optional":true,"conflicts_with":["virtual_network_id"]},"backend_address_pool_id":{"type":"string","required":true},"inbound_nat_rule_port_mapping":{"type":["list",["object",{"backend_port":"number","frontend_port":"number","inbound_nat_rule_name":"string"}]],"computed":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true,"conflicts_with":["backend_address_ip_configuration_id"]}}}},"azurerm_lb_nat_pool":{"block":{"attributes":{"backend_port":{"type":"number","required":true},"floating_ip_enabled":{"type":"bool","optional":true},"frontend_ip_configuration_id":{"type":"string","computed":true},"frontend_ip_configuration_name":{"type":"string","required":true},"frontend_port_end":{"type":"number","required":true},"frontend_port_start":{"type":"number","required":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tcp_reset_enabled":{"type":"bool","optional":true}}}},"azurerm_lb_nat_rule":{"block":{"attributes":{"backend_address_pool_id":{"type":"string","optional":true,"conflicts_with":["frontend_port"],"required_with":["frontend_port_start","frontend_port_end"]},"backend_ip_configuration_id":{"type":"string","computed":true},"backend_port":{"type":"number","required":true},"enable_floating_ip":{"type":"bool","optional":true,"computed":true,"conflicts_with":["floating_ip_enabled"]},"enable_tcp_reset":{"type":"bool","optional":true,"computed":true,"conflicts_with":["tcp_reset_enabled"]},"floating_ip_enabled":{"type":"bool","optional":true,"computed":true},"frontend_ip_configuration_id":{"type":"string","computed":true},"frontend_ip_configuration_name":{"type":"string","required":true},"frontend_port":{"type":"number","optional":true,"conflicts_with":["frontend_port_start","frontend_port_end","backend_address_pool_id"]},"frontend_port_end":{"type":"number","optional":true,"conflicts_with":["frontend_port"],"required_with":["backend_address_pool_id","frontend_port_start"]},"frontend_port_start":{"type":"number","optional":true,"conflicts_with":["frontend_port"],"required_with":["backend_address_pool_id","frontend_port_end"]},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tcp_reset_enabled":{"type":"bool","optional":true,"computed":true}}}},"azurerm_lb_outbound_rule":{"block":{"attributes":{"allocated_outbound_ports":{"type":"number","optional":true,"default":1024},"backend_address_pool_id":{"type":"string","required":true},"enable_tcp_reset":{"type":"bool","optional":true,"computed":true,"conflicts_with":["tcp_reset_enabled"]},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"protocol":{"type":"string","required":true},"tcp_reset_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["enable_tcp_reset"]}},"block_types":{"frontend_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_lb_probe":{"block":{"attributes":{"interval_in_seconds":{"type":"number","optional":true,"default":15},"load_balancer_rules":{"type":["set","string"],"computed":true},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"number_of_probes":{"type":"number","optional":true,"default":2},"port":{"type":"number","required":true},"probe_threshold":{"type":"number","optional":true,"default":1},"protocol":{"type":"string","optional":true,"default":"Tcp"},"request_path":{"type":"string","optional":true}}}},"azurerm_lb_rule":{"block":{"attributes":{"backend_address_pool_ids":{"type":["list","string"],"optional":true},"backend_port":{"type":"number","required":true},"disable_outbound_snat":{"type":"bool","optional":true,"default":false},"enable_floating_ip":{"type":"bool","optional":true,"computed":true,"conflicts_with":["floating_ip_enabled"]},"enable_tcp_reset":{"type":"bool","optional":true,"computed":true,"conflicts_with":["tcp_reset_enabled"]},"floating_ip_enabled":{"type":"bool","optional":true,"computed":true},"frontend_ip_configuration_id":{"type":"string","computed":true},"frontend_ip_configuration_name":{"type":"string","required":true},"frontend_port":{"type":"number","required":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"load_distribution":{"type":"string","optional":true,"default":"Default"},"loadbalancer_id":{"type":"string","required":true},"name":{"type":"string","required":true},"probe_id":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"tcp_reset_enabled":{"type":"bool","optional":true,"computed":true}}}},"azurerm_lighthouse_assignment":{"block":{"attributes":{"lighthouse_definition_id":{"type":"string","required":true},"name":{"type":"string","optional":true,"computed":true},"scope":{"type":"string","required":true}}}},"azurerm_lighthouse_definition":{"block":{"attributes":{"description":{"type":"string","optional":true},"lighthouse_definition_id":{"type":"string","optional":true,"computed":true},"managing_tenant_id":{"type":"string","required":true},"name":{"type":"string","required":true},"scope":{"type":"string","required":true}},"block_types":{"authorization":{"nesting_mode":4,"block":{"attributes":{"delegated_role_definition_ids":{"type":["set","string"],"optional":true},"principal_display_name":{"type":"string","optional":true},"principal_id":{"type":"string","required":true},"role_definition_id":{"type":"string","required":true}}},"required":true},"eligible_authorization":{"nesting_mode":4,"block":{"attributes":{"principal_display_name":{"type":"string","optional":true},"principal_id":{"type":"string","required":true},"role_definition_id":{"type":"string","required":true}},"block_types":{"just_in_time_access_policy":{"nesting_mode":3,"block":{"attributes":{"maximum_activation_duration":{"type":"string","optional":true,"default":"PT8H"},"multi_factor_auth_provider":{"type":"string","optional":true}},"block_types":{"approver":{"nesting_mode":4,"block":{"attributes":{"principal_display_name":{"type":"string","optional":true},"principal_id":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true}}}},"azurerm_linux_function_app":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"builtin_logging_enabled":{"type":"bool","optional":true,"default":true},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Optional"},"content_share_force_disabled":{"type":"bool","optional":true,"default":false},"custom_domain_verification_id":{"type":"string","computed":true},"daily_memory_time_quota":{"type":"number","optional":true,"default":0},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"functions_extension_version":{"type":"string","optional":true,"default":"~4"},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_plan_id":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","optional":true,"conflicts_with":["storage_uses_managed_identity","storage_key_vault_secret_id"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_key_vault_secret_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_uses_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["storage_account_access_key","storage_key_vault_secret_id"]},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"computed":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"app_scale_limit":{"type":"number","optional":true,"computed":true},"application_insights_connection_string":{"type":"string","optional":true},"application_insights_key":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"linux_fx_version":{"type":"string","computed":true},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":false},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"app_service_logs":{"nesting_mode":3,"block":{"attributes":{"disk_quota_mb":{"type":"number","optional":true,"default":35},"retention_period_days":{"type":"number","optional":true}}},"optional":true},"application_stack":{"nesting_mode":3,"block":{"attributes":{"dotnet_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"powershell_core_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"python_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"use_custom_runtime":{"type":"bool","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"use_dotnet_isolated_runtime":{"type":"bool","optional":true,"default":false,"conflicts_with":["site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]}},"block_types":{"docker":{"nesting_mode":3,"block":{"attributes":{"image_name":{"type":"string","required":true},"image_tag":{"type":"string","required":true},"registry_password":{"type":"string","optional":true},"registry_url":{"type":"string","required":true},"registry_username":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"sticky_settings":{"nesting_mode":3,"block":{"attributes":{"app_setting_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]},"connection_string_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]}}},"optional":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_linux_function_app_slot":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"builtin_logging_enabled":{"type":"bool","optional":true,"default":true},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Optional"},"content_share_force_disabled":{"type":"bool","optional":true,"default":false},"custom_domain_verification_id":{"type":"string","computed":true},"daily_memory_time_quota":{"type":"number","optional":true,"default":0},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"function_app_id":{"type":"string","required":true},"functions_extension_version":{"type":"string","optional":true,"default":"~4"},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"service_plan_id":{"type":"string","optional":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","optional":true,"conflicts_with":["storage_uses_managed_identity","storage_key_vault_secret_id"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_key_vault_secret_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_uses_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["storage_account_access_key","storage_key_vault_secret_id"]},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"computed":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"app_scale_limit":{"type":"number","optional":true,"computed":true},"application_insights_connection_string":{"type":"string","optional":true},"application_insights_key":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"default":0},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"linux_fx_version":{"type":"string","computed":true},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":false},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"app_service_logs":{"nesting_mode":3,"block":{"attributes":{"disk_quota_mb":{"type":"number","optional":true,"default":35},"retention_period_days":{"type":"number","optional":true}}},"optional":true},"application_stack":{"nesting_mode":3,"block":{"attributes":{"dotnet_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"powershell_core_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"python_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"use_custom_runtime":{"type":"bool","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]},"use_dotnet_isolated_runtime":{"type":"bool","optional":true,"default":false,"conflicts_with":["site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]}},"block_types":{"docker":{"nesting_mode":3,"block":{"attributes":{"image_name":{"type":"string","required":true},"image_tag":{"type":"string","required":true},"registry_password":{"type":"string","optional":true},"registry_url":{"type":"string","required":true},"registry_username":{"type":"string","optional":true}}},"optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.docker","site_config.0.application_stack.0.use_custom_runtime"]}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_linux_virtual_machine":{"block":{"attributes":{"admin_password":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"]},"admin_username":{"type":"string","optional":true,"exactly_one_of":["admin_username","os_managed_disk_id"]},"allow_extension_operations":{"type":"bool","optional":true,"computed":true},"availability_set_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id","virtual_machine_scale_set_id","zone"]},"bypass_platform_safety_checks_on_user_schedule_enabled":{"type":"bool","optional":true,"default":false,"conflicts_with":["os_managed_disk_id"]},"capacity_reservation_group_id":{"type":"string","optional":true,"conflicts_with":["availability_set_id","proximity_placement_group_id"]},"computer_name":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"custom_data":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"]},"dedicated_host_group_id":{"type":"string","optional":true,"conflicts_with":["dedicated_host_id"]},"dedicated_host_id":{"type":"string","optional":true,"conflicts_with":["dedicated_host_group_id"]},"disable_password_authentication":{"type":"bool","optional":true,"computed":true},"disk_controller_type":{"type":"string","optional":true,"computed":true},"edge_zone":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"eviction_policy":{"type":"string","optional":true},"extensions_time_budget":{"type":"string","optional":true,"default":"PT1H30M"},"license_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"max_bid_price":{"type":"number","optional":true,"default":-1},"name":{"type":"string","required":true},"network_interface_ids":{"type":["list","string"],"required":true},"os_managed_disk_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"patch_assessment_mode":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"patch_mode":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"platform_fault_domain":{"type":"number","optional":true,"default":-1,"required_with":["virtual_machine_scale_set_id"]},"priority":{"type":"string","optional":true,"default":"Regular"},"private_ip_address":{"type":"string","computed":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"provision_vm_agent":{"type":"bool","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"proximity_placement_group_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id"]},"public_ip_address":{"type":"string","computed":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"reboot_setting":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"]},"resource_group_name":{"type":"string","required":true},"secure_boot_enabled":{"type":"bool","optional":true},"size":{"type":"string","required":true},"source_image_id":{"type":"string","optional":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"tags":{"type":["map","string"],"optional":true},"user_data":{"type":"string","optional":true},"virtual_machine_id":{"type":"string","computed":true},"virtual_machine_scale_set_id":{"type":"string","optional":true,"conflicts_with":["availability_set_id"]},"vm_agent_platform_updates_enabled":{"type":"bool","optional":true,"computed":true},"vtpm_enabled":{"type":"bool","optional":true},"zone":{"type":"string","optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"hibernation_enabled":{"type":"bool","optional":true,"default":false},"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"admin_ssh_key":{"nesting_mode":4,"block":{"attributes":{"public_key":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"storage_account_uri":{"type":"string","optional":true}}},"optional":true},"gallery_application":{"nesting_mode":3,"block":{"attributes":{"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":false},"configuration_blob_uri":{"type":"string","optional":true},"order":{"type":"number","optional":true,"default":0},"tag":{"type":"string","optional":true},"treat_failure_as_deployment_failure_enabled":{"type":"bool","optional":true,"default":false},"version_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.secure_vm_disk_encryption_set_id"]},"disk_size_gb":{"type":"number","optional":true,"computed":true},"id":{"type":"string","computed":true},"name":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"secure_vm_disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.disk_encryption_set_id"]},"security_encryption_type":{"type":"string","optional":true},"storage_account_type":{"type":"string","optional":true,"computed":true,"exactly_one_of":["os_managed_disk_id","os_disk.0.storage_account_type"]},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"diff_disk_settings":{"nesting_mode":3,"block":{"attributes":{"option":{"type":"string","required":true},"placement":{"type":"string","optional":true,"default":"CacheDisk"}}},"optional":true,"conflicts_with":["os_managed_disk_id"]}}},"required":true},"os_image_notification":{"nesting_mode":3,"block":{"attributes":{"timeout":{"type":"string","optional":true,"default":"PT15M"}}},"optional":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"url":{"type":"string","required":true}}},"required":true}}},"optional":true},"source_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"termination_notification":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"timeout":{"type":"string","optional":true,"default":"PT5M"}}},"optional":true,"computed":true}}}},"azurerm_linux_virtual_machine_scale_set":{"block":{"attributes":{"admin_password":{"type":"string","optional":true},"admin_username":{"type":"string","required":true},"capacity_reservation_group_id":{"type":"string","optional":true,"conflicts_with":["proximity_placement_group_id"]},"computer_name_prefix":{"type":"string","optional":true,"computed":true},"custom_data":{"type":"string","optional":true},"disable_password_authentication":{"type":"bool","optional":true,"default":true},"do_not_run_extensions_on_overprovisioned_machines":{"type":"bool","optional":true,"default":false},"edge_zone":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"eviction_policy":{"type":"string","optional":true},"extension_operations_enabled":{"type":"bool","optional":true,"default":true},"extensions_time_budget":{"type":"string","optional":true,"default":"PT1H30M"},"health_probe_id":{"type":"string","optional":true},"host_group_id":{"type":"string","optional":true},"instances":{"type":"number","optional":true,"default":0},"location":{"type":"string","required":true},"max_bid_price":{"type":"number","optional":true,"default":-1},"name":{"type":"string","required":true},"overprovision":{"type":"bool","optional":true,"default":true},"platform_fault_domain_count":{"type":"number","optional":true,"computed":true},"priority":{"type":"string","optional":true,"default":"Regular"},"provision_vm_agent":{"type":"bool","optional":true,"default":true},"proximity_placement_group_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id"]},"resilient_vm_creation_enabled":{"type":"bool","optional":true,"default":false},"resilient_vm_deletion_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"secure_boot_enabled":{"type":"bool","optional":true},"single_placement_group":{"type":"bool","optional":true,"default":true},"sku":{"type":"string","required":true},"source_image_id":{"type":"string","optional":true,"exactly_one_of":["source_image_id","source_image_reference"]},"tags":{"type":["map","string"],"optional":true},"unique_id":{"type":"string","computed":true},"upgrade_mode":{"type":"string","optional":true,"default":"Manual"},"user_data":{"type":"string","optional":true},"vtpm_enabled":{"type":"bool","optional":true},"zone_balance":{"type":"bool","optional":true,"default":false},"zones":{"type":["set","string"],"optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"admin_ssh_key":{"nesting_mode":4,"block":{"attributes":{"public_key":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"automatic_instance_repair":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"grace_period":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"automatic_os_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"disable_automatic_rollback":{"type":"bool","required":true},"enable_automatic_os_upgrade":{"type":"bool","required":true}}},"optional":true},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"storage_account_uri":{"type":"string","optional":true}}},"optional":true},"data_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"create_option":{"type":"string","optional":true,"default":"Empty"},"disk_encryption_set_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","required":true},"lun":{"type":"number","required":true},"name":{"type":"string","optional":true},"storage_account_type":{"type":"string","required":true},"ultra_ssd_disk_iops_read_write":{"type":"number","optional":true,"computed":true},"ultra_ssd_disk_mbps_read_write":{"type":"number","optional":true,"computed":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"extension":{"nesting_mode":4,"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true,"default":true},"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":false},"force_update_tag":{"type":"string","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"provision_after_extensions":{"type":["list","string"],"optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true}},"block_types":{"protected_settings_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"gallery_application":{"nesting_mode":3,"block":{"attributes":{"configuration_blob_uri":{"type":"string","optional":true},"order":{"type":"number","optional":true,"default":0},"tag":{"type":"string","optional":true},"version_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"auxiliary_mode":{"type":"string","optional":true},"auxiliary_sku":{"type":"string","optional":true},"dns_servers":{"type":["list","string"],"optional":true},"enable_accelerated_networking":{"type":"bool","optional":true,"default":false},"enable_ip_forwarding":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"network_security_group_id":{"type":"string","optional":true},"primary":{"type":"bool","optional":true,"default":false}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"application_gateway_backend_address_pool_ids":{"type":["set","string"],"optional":true},"application_security_group_ids":{"type":["set","string"],"optional":true},"load_balancer_backend_address_pool_ids":{"type":["set","string"],"optional":true},"load_balancer_inbound_nat_rules_ids":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"public_ip_address":{"nesting_mode":3,"block":{"attributes":{"domain_name_label":{"type":"string","optional":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"public_ip_prefix_id":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"ip_tag":{"nesting_mode":3,"block":{"attributes":{"tag":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"required":true}}},"required":true},"os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.secure_vm_disk_encryption_set_id"]},"disk_size_gb":{"type":"number","optional":true,"computed":true},"secure_vm_disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.disk_encryption_set_id"]},"security_encryption_type":{"type":"string","optional":true},"storage_account_type":{"type":"string","required":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"diff_disk_settings":{"nesting_mode":3,"block":{"attributes":{"option":{"type":"string","required":true},"placement":{"type":"string","optional":true,"default":"CacheDisk"}}},"optional":true}}},"required":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"rolling_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"cross_zone_upgrades_enabled":{"type":"bool","optional":true},"max_batch_instance_percent":{"type":"number","required":true},"max_unhealthy_instance_percent":{"type":"number","required":true},"max_unhealthy_upgraded_instance_percent":{"type":"number","required":true},"maximum_surge_instances_enabled":{"type":"bool","optional":true},"pause_time_between_batches":{"type":"string","required":true},"prioritize_unhealthy_instances_enabled":{"type":"bool","optional":true}}},"optional":true},"scale_in":{"nesting_mode":3,"block":{"attributes":{"force_deletion_enabled":{"type":"bool","optional":true,"default":false},"rule":{"type":"string","optional":true,"default":"Default"}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"url":{"type":"string","required":true}}},"required":true}}},"optional":true},"source_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["source_image_id","source_image_reference"]},"spot_restore":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":false},"timeout":{"type":"string","optional":true,"default":"PT1H"}}},"optional":true,"computed":true},"termination_notification":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"timeout":{"type":"string","optional":true,"default":"PT5M"}}},"optional":true,"computed":true}}}},"azurerm_linux_web_app":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"client_affinity_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Required"},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_plan_id":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages":{"type":"bool","optional":true,"default":false},"failed_request_tracing":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","required":true}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","optional":true,"default":0},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"]}}},"optional":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"linux_fx_version":{"type":"string","computed":true},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"local_mysql_enabled":{"type":"bool","optional":true,"default":false},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"application_stack":{"nesting_mode":3,"block":{"attributes":{"docker_image_name":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"docker_registry_password":{"type":"string","optional":true},"docker_registry_url":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.docker_image_name"]},"docker_registry_username":{"type":"string","optional":true},"dotnet_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"go_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"java_server":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.java_server_version"]},"java_server_version":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.java_server"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"],"required_with":["site_config.0.application_stack.0.java_server_version","site_config.0.application_stack.0.java_server"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"php_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"python_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"ruby_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]}}},"optional":true,"computed":true},"auto_heal_setting":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true},"minimum_process_execution_time":{"type":"string","optional":true,"computed":true}}},"optional":true},"trigger":{"nesting_mode":3,"block":{"block_types":{"requests":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true}}},"optional":true},"slow_request":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"time_taken":{"type":"string","required":true}}},"optional":true},"slow_request_with_path":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"time_taken":{"type":"string","required":true}}},"optional":true},"status_code":{"nesting_mode":4,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"status_code_range":{"type":"string","required":true},"sub_status":{"type":"number","optional":true},"win32_status_code":{"type":"number","optional":true}}},"optional":true}}},"optional":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"sticky_settings":{"nesting_mode":3,"block":{"attributes":{"app_setting_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]},"connection_string_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]}}},"optional":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_linux_web_app_slot":{"block":{"attributes":{"app_metadata":{"type":["map","string"],"computed":true},"app_service_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true},"client_affinity_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Required"},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"service_plan_id":{"type":"string","optional":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages":{"type":"bool","optional":true,"default":false},"failed_request_tracing":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","required":true}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","optional":true,"default":0},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"]}}},"optional":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"linux_fx_version":{"type":"string","computed":true},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"local_mysql_enabled":{"type":"bool","optional":true,"default":false},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"application_stack":{"nesting_mode":3,"block":{"attributes":{"docker_image_name":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"docker_registry_password":{"type":"string","optional":true},"docker_registry_url":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.docker_image_name"]},"docker_registry_username":{"type":"string","optional":true},"dotnet_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"go_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"java_server":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.java_server_version"]},"java_server_version":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.java_server"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"],"required_with":["site_config.0.application_stack.0.java_server_version","site_config.0.application_stack.0.java_server"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"php_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"python_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]},"ruby_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python_version","site_config.0.application_stack.0.ruby_version","site_config.0.application_stack.0.go_version"]}}},"optional":true,"computed":true},"auto_heal_setting":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true},"minimum_process_execution_time":{"type":"string","optional":true,"computed":true}}},"optional":true},"trigger":{"nesting_mode":3,"block":{"block_types":{"requests":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true}}},"optional":true},"slow_request":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"time_taken":{"type":"string","required":true}}},"optional":true},"slow_request_with_path":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"time_taken":{"type":"string","required":true}}},"optional":true},"status_code":{"nesting_mode":4,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"status_code_range":{"type":"string","required":true},"sub_status":{"type":"number","optional":true},"win32_status_code":{"type":"number","optional":true}}},"optional":true}}},"optional":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_load_test":{"block":{"attributes":{"data_plane_uri":{"type":"string","computed":true},"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"key_url":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_id":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_local_network_gateway":{"block":{"attributes":{"address_space":{"type":["list","string"],"optional":true},"gateway_address":{"type":"string","optional":true,"exactly_one_of":["gateway_address","gateway_fqdn"]},"gateway_fqdn":{"type":"string","optional":true,"exactly_one_of":["gateway_address","gateway_fqdn"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"bgp_settings":{"nesting_mode":3,"block":{"attributes":{"asn":{"type":"number","required":true},"bgp_peering_address":{"type":"string","required":true},"peer_weight":{"type":"number","optional":true}}},"optional":true}}}},"azurerm_log_analytics_cluster":{"block":{"attributes":{"cluster_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"size_gb":{"type":"number","optional":true,"default":100},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_log_analytics_cluster_customer_managed_key":{"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"log_analytics_cluster_id":{"type":"string","required":true}}}},"azurerm_log_analytics_data_export_rule":{"block":{"attributes":{"destination_resource_id":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":false},"export_rule_id":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"table_names":{"type":["set","string"],"required":true},"workspace_resource_id":{"type":"string","required":true}}}},"azurerm_log_analytics_datasource_windows_event":{"block":{"attributes":{"event_log_name":{"type":"string","required":true},"event_types":{"type":["set","string"],"required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"workspace_name":{"type":"string","required":true}}}},"azurerm_log_analytics_datasource_windows_performance_counter":{"block":{"attributes":{"counter_name":{"type":"string","required":true},"instance_name":{"type":"string","required":true},"interval_seconds":{"type":"number","required":true},"name":{"type":"string","required":true},"object_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"workspace_name":{"type":"string","required":true}}}},"azurerm_log_analytics_linked_service":{"block":{"attributes":{"name":{"type":"string","computed":true},"read_access_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["read_access_id","write_access_id"]},"resource_group_name":{"type":"string","required":true},"workspace_id":{"type":"string","required":true},"write_access_id":{"type":"string","optional":true,"exactly_one_of":["read_access_id","write_access_id"]}}}},"azurerm_log_analytics_linked_storage_account":{"block":{"attributes":{"data_source_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_ids":{"type":["set","string"],"required":true},"workspace_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["workspace_id","workspace_resource_id"]},"workspace_resource_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["workspace_id","workspace_resource_id"]}}}},"azurerm_log_analytics_query_pack":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_log_analytics_query_pack_query":{"block":{"attributes":{"additional_settings_json":{"type":"string","optional":true},"body":{"type":"string","required":true},"categories":{"type":["list","string"],"optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"name":{"type":"string","optional":true,"computed":true},"query_pack_id":{"type":"string","required":true},"resource_types":{"type":["list","string"],"optional":true},"solutions":{"type":["list","string"],"optional":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_log_analytics_saved_search":{"block":{"attributes":{"category":{"type":"string","required":true},"display_name":{"type":"string","required":true},"function_alias":{"type":"string","optional":true},"function_parameters":{"type":["list","string"],"optional":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"query":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_log_analytics_solution":{"block":{"attributes":{"location":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"solution_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_name":{"type":"string","required":true},"workspace_resource_id":{"type":"string","required":true}},"block_types":{"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","computed":true},"product":{"type":"string","required":true},"promotion_code":{"type":"string","optional":true},"publisher":{"type":"string","required":true}}},"required":true}}}},"azurerm_log_analytics_storage_insights":{"block":{"attributes":{"blob_container_names":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"storage_account_key":{"type":"string","required":true},"table_names":{"type":["set","string"],"optional":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_log_analytics_workspace":{"block":{"attributes":{"allow_resource_only_permissions":{"type":"bool","optional":true,"default":true},"cmk_for_query_forced":{"type":"bool","optional":true},"daily_quota_gb":{"type":"number","optional":true,"default":-1},"data_collection_rule_id":{"type":"string","optional":true},"immediate_data_purge_on_30_days_enabled":{"type":"bool","optional":true},"internet_ingestion_enabled":{"type":"bool","optional":true,"default":true},"internet_query_enabled":{"type":"bool","optional":true,"default":true},"local_authentication_disabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["local_authentication_enabled"]},"local_authentication_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["local_authentication_disabled"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_shared_key":{"type":"string","computed":true},"reservation_capacity_in_gb_per_day":{"type":"number","optional":true},"resource_group_name":{"type":"string","required":true},"retention_in_days":{"type":"number","optional":true,"computed":true},"secondary_shared_key":{"type":"string","computed":true},"sku":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","computed":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_log_analytics_workspace_table":{"block":{"attributes":{"name":{"type":"string","required":true},"plan":{"type":"string","optional":true,"default":"Analytics"},"retention_in_days":{"type":"number","optional":true},"total_retention_in_days":{"type":"number","optional":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_logic_app_action_custom":{"block":{"attributes":{"body":{"type":"string","required":true},"logic_app_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_logic_app_action_http":{"block":{"attributes":{"body":{"type":"string","optional":true},"headers":{"type":["map","string"],"optional":true},"logic_app_id":{"type":"string","required":true},"method":{"type":"string","required":true},"name":{"type":"string","required":true},"queries":{"type":["map","string"],"optional":true},"uri":{"type":"string","required":true}},"block_types":{"run_after":{"nesting_mode":4,"block":{"attributes":{"action_name":{"type":"string","required":true},"action_result":{"type":"string","required":true}}},"optional":true}}}},"azurerm_logic_app_integration_account":{"block":{"attributes":{"integration_service_environment_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_logic_app_integration_account_agreement":{"block":{"attributes":{"agreement_type":{"type":"string","required":true},"content":{"type":"string","required":true},"guest_partner_name":{"type":"string","required":true},"host_partner_name":{"type":"string","required":true},"integration_account_name":{"type":"string","required":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"guest_identity":{"nesting_mode":3,"block":{"attributes":{"qualifier":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true},"host_identity":{"nesting_mode":3,"block":{"attributes":{"qualifier":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_logic_app_integration_account_assembly":{"block":{"attributes":{"assembly_name":{"type":"string","required":true},"assembly_version":{"type":"string","optional":true,"default":"0.0.0.0"},"content":{"type":"string","optional":true,"at_least_one_of":["content","content_link_uri"]},"content_link_uri":{"type":"string","optional":true,"at_least_one_of":["content","content_link_uri"]},"integration_account_name":{"type":"string","required":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_logic_app_integration_account_batch_configuration":{"block":{"attributes":{"batch_group_name":{"type":"string","required":true},"integration_account_name":{"type":"string","required":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"release_criteria":{"nesting_mode":3,"block":{"attributes":{"batch_size":{"type":"number","optional":true,"at_least_one_of":["release_criteria.0.batch_size","release_criteria.0.message_count","release_criteria.0.recurrence"]},"message_count":{"type":"number","optional":true,"at_least_one_of":["release_criteria.0.batch_size","release_criteria.0.message_count","release_criteria.0.recurrence"]}},"block_types":{"recurrence":{"nesting_mode":3,"block":{"attributes":{"end_time":{"type":"string","optional":true},"frequency":{"type":"string","required":true},"interval":{"type":"number","required":true},"start_time":{"type":"string","optional":true},"time_zone":{"type":"string","optional":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"hours":{"type":["set","number"],"optional":true},"minutes":{"type":["set","number"],"optional":true},"month_days":{"type":["set","number"],"optional":true,"conflicts_with":["release_criteria.0.recurrence.0.schedule.0.week_days"]},"week_days":{"type":["set","string"],"optional":true,"conflicts_with":["release_criteria.0.recurrence.0.schedule.0.month_days","release_criteria.0.recurrence.0.schedule.0.monthly"]}},"block_types":{"monthly":{"nesting_mode":4,"block":{"attributes":{"week":{"type":"number","required":true},"weekday":{"type":"string","required":true}}},"optional":true,"conflicts_with":["release_criteria.0.recurrence.0.schedule.0.week_days"]}}},"optional":true}}},"optional":true,"at_least_one_of":["release_criteria.0.batch_size","release_criteria.0.message_count","release_criteria.0.recurrence"]}}},"required":true}}}},"azurerm_logic_app_integration_account_certificate":{"block":{"attributes":{"integration_account_name":{"type":"string","required":true},"metadata":{"type":"string","optional":true},"name":{"type":"string","required":true},"public_certificate":{"type":"string","optional":true,"at_least_one_of":["key_vault_key"]},"resource_group_name":{"type":"string","required":true}},"block_types":{"key_vault_key":{"nesting_mode":3,"block":{"attributes":{"key_name":{"type":"string","required":true},"key_vault_id":{"type":"string","required":true},"key_version":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["public_certificate"]}}}},"azurerm_logic_app_integration_account_map":{"block":{"attributes":{"content":{"type":"string","required":true},"integration_account_name":{"type":"string","required":true},"map_type":{"type":"string","required":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_logic_app_integration_account_partner":{"block":{"attributes":{"integration_account_name":{"type":"string","required":true},"metadata":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"business_identity":{"nesting_mode":4,"block":{"attributes":{"qualifier":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_logic_app_integration_account_schema":{"block":{"attributes":{"content":{"type":"string","required":true},"file_name":{"type":"string","optional":true},"integration_account_name":{"type":"string","required":true},"metadata":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_logic_app_integration_account_session":{"block":{"attributes":{"content":{"type":"string","required":true},"integration_account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_logic_app_standard":{"block":{"attributes":{"app_service_plan_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true,"computed":true},"bundle_version":{"type":"string","optional":true,"default":"[1.*, 2.0.0)"},"client_affinity_enabled":{"type":"bool","optional":true,"computed":true},"client_certificate_mode":{"type":"string","optional":true},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"https_only":{"type":"bool","optional":true,"default":false},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"scm_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"site_credential":{"type":["list",["object",{"password":"string","username":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"storage_account_share_name":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"use_extension_bundle":{"type":"bool","optional":true,"default":true},"version":{"type":"string","optional":true,"default":"~4"},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_content_share_enabled":{"type":"bool","optional":true}},"block_types":{"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":false},"app_scale_limit":{"type":"number","optional":true,"computed":true},"auto_swap_slot_name":{"type":"string","computed":true},"dotnet_framework_version":{"type":"string","optional":true,"default":"v4.0"},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"computed":true},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"linux_fx_version":{"type":"string","optional":true,"computed":true},"min_tls_version":{"type":"string","optional":true,"computed":true},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true,"default":false},"scm_min_tls_version":{"type":"string","optional":true,"computed":true},"scm_type":{"type":"string","optional":true,"computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker_process":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"computed":true},"websockets_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_logic_app_trigger_custom":{"block":{"attributes":{"body":{"type":"string","required":true},"callback_url":{"type":"string","computed":true},"logic_app_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_logic_app_trigger_http_request":{"block":{"attributes":{"callback_url":{"type":"string","computed":true},"logic_app_id":{"type":"string","required":true},"method":{"type":"string","optional":true},"name":{"type":"string","required":true},"relative_path":{"type":"string","optional":true},"schema":{"type":"string","required":true}}}},"azurerm_logic_app_trigger_recurrence":{"block":{"attributes":{"frequency":{"type":"string","required":true},"interval":{"type":"number","required":true},"logic_app_id":{"type":"string","required":true},"name":{"type":"string","required":true},"start_time":{"type":"string","optional":true},"time_zone":{"type":"string","optional":true,"computed":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"at_these_hours":{"type":["set","number"],"optional":true,"at_least_one_of":["schedule.0.at_these_hours","schedule.0.at_these_minutes","schedule.0.on_these_days"]},"at_these_minutes":{"type":["set","number"],"optional":true,"at_least_one_of":["schedule.0.at_these_hours","schedule.0.at_these_minutes","schedule.0.on_these_days"]},"on_these_days":{"type":["set","string"],"optional":true,"at_least_one_of":["schedule.0.at_these_hours","schedule.0.at_these_minutes","schedule.0.on_these_days"]}}},"optional":true}}}},"azurerm_logic_app_workflow":{"block":{"attributes":{"access_endpoint":{"type":"string","computed":true},"connector_endpoint_ip_addresses":{"type":["list","string"],"computed":true},"connector_outbound_ip_addresses":{"type":["list","string"],"computed":true},"enabled":{"type":"bool","optional":true,"default":true},"integration_service_environment_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"logic_app_integration_account_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workflow_endpoint_ip_addresses":{"type":["list","string"],"computed":true},"workflow_outbound_ip_addresses":{"type":["list","string"],"computed":true},"workflow_parameters":{"type":["map","string"],"optional":true},"workflow_schema":{"type":"string","optional":true,"default":"https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#"},"workflow_version":{"type":"string","optional":true,"default":"1.0.0.0"}},"block_types":{"access_control":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"allowed_caller_ip_address_range":{"type":["set","string"],"required":true}}},"optional":true},"content":{"nesting_mode":3,"block":{"attributes":{"allowed_caller_ip_address_range":{"type":["set","string"],"required":true}}},"optional":true},"trigger":{"nesting_mode":3,"block":{"attributes":{"allowed_caller_ip_address_range":{"type":["set","string"],"optional":true}},"block_types":{"open_authentication_policy":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"claim":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true},"workflow_management":{"nesting_mode":3,"block":{"attributes":{"allowed_caller_ip_address_range":{"type":["set","string"],"required":true}}},"optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_machine_learning_compute_cluster":{"block":{"attributes":{"description":{"type":"string","optional":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"machine_learning_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"node_public_ip_enabled":{"type":"bool","optional":true,"default":true},"ssh_public_access_enabled":{"type":"bool","optional":true,"default":false},"subnet_resource_id":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"vm_priority":{"type":"string","required":true},"vm_size":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"scale_settings":{"nesting_mode":3,"block":{"attributes":{"max_node_count":{"type":"number","required":true},"min_node_count":{"type":"number","required":true},"scale_down_nodes_after_idle_duration":{"type":"string","required":true}}},"required":true},"ssh":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","optional":true,"at_least_one_of":["ssh.0.admin_password","ssh.0.key_value"]},"admin_username":{"type":"string","required":true},"key_value":{"type":"string","optional":true,"at_least_one_of":["ssh.0.admin_password","ssh.0.key_value"]}}},"optional":true}}}},"azurerm_machine_learning_compute_instance":{"block":{"attributes":{"authorization_type":{"type":"string","optional":true},"description":{"type":"string","optional":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"machine_learning_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"node_public_ip_enabled":{"type":"bool","optional":true,"default":true},"subnet_resource_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_machine_size":{"type":"string","required":true}},"block_types":{"assign_to_user":{"nesting_mode":3,"block":{"attributes":{"object_id":{"type":"string","optional":true},"tenant_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"ssh":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","computed":true},"public_key":{"type":"string","required":true},"username":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_machine_learning_datastore_blobstorage":{"block":{"attributes":{"account_key":{"type":"string","optional":true},"description":{"type":"string","optional":true},"is_default":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"service_data_auth_identity":{"type":"string","optional":true,"default":"None"},"shared_access_signature":{"type":"string","optional":true},"storage_container_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_machine_learning_datastore_datalake_gen2":{"block":{"attributes":{"authority_url":{"type":"string","optional":true},"client_id":{"type":"string","optional":true,"required_with":["tenant_id","client_secret"]},"client_secret":{"type":"string","optional":true,"required_with":["tenant_id","client_id"]},"description":{"type":"string","optional":true},"is_default":{"type":"bool","computed":true},"name":{"type":"string","required":true},"service_data_identity":{"type":"string","optional":true,"default":"None"},"storage_container_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","optional":true,"required_with":["client_id","client_secret"]},"workspace_id":{"type":"string","required":true}}}},"azurerm_machine_learning_datastore_fileshare":{"block":{"attributes":{"account_key":{"type":"string","optional":true,"exactly_one_of":["account_key","shared_access_signature"]},"description":{"type":"string","optional":true},"is_default":{"type":"bool","computed":true},"name":{"type":"string","required":true},"service_data_identity":{"type":"string","optional":true,"default":"None"},"shared_access_signature":{"type":"string","optional":true,"at_least_one_of":["account_key","shared_access_signature"]},"storage_fileshare_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_machine_learning_inference_cluster":{"block":{"attributes":{"cluster_purpose":{"type":"string","optional":true,"default":"FastProd"},"description":{"type":"string","optional":true},"kubernetes_cluster_id":{"type":"string","required":true},"location":{"type":"string","required":true},"machine_learning_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"ssl":{"nesting_mode":3,"block":{"attributes":{"cert":{"type":"string","optional":true,"default":"","conflicts_with":["ssl.0.leaf_domain_label","ssl.0.overwrite_existing_domain"]},"cname":{"type":"string","optional":true,"default":"","conflicts_with":["ssl.0.leaf_domain_label","ssl.0.overwrite_existing_domain"]},"key":{"type":"string","optional":true,"default":"","conflicts_with":["ssl.0.leaf_domain_label","ssl.0.overwrite_existing_domain"]},"leaf_domain_label":{"type":"string","optional":true,"default":"","conflicts_with":["ssl.0.cert","ssl.0.key","ssl.0.cname"]},"overwrite_existing_domain":{"type":"bool","optional":true,"conflicts_with":["ssl.0.cert","ssl.0.key","ssl.0.cname"]}}},"optional":true}}}},"azurerm_machine_learning_synapse_spark":{"block":{"attributes":{"description":{"type":"string","optional":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"machine_learning_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"synapse_spark_pool_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_machine_learning_workspace":{"block":{"attributes":{"application_insights_id":{"type":"string","required":true},"container_registry_id":{"type":"string","optional":true},"description":{"type":"string","optional":true},"discovery_url":{"type":"string","computed":true},"friendly_name":{"type":"string","optional":true},"high_business_impact":{"type":"bool","optional":true},"image_build_compute_name":{"type":"string","optional":true},"key_vault_id":{"type":"string","required":true},"kind":{"type":"string","optional":true,"default":"Default"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_user_assigned_identity":{"type":"string","optional":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_side_encryption_enabled":{"type":"bool","optional":true,"default":false,"required_with":["encryption"]},"sku_name":{"type":"string","optional":true,"default":"Basic"},"storage_account_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"v1_legacy_mode_enabled":{"type":"bool","optional":true,"default":false},"workspace_id":{"type":"string","computed":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"key_id":{"type":"string","required":true},"key_vault_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"feature_store":{"nesting_mode":3,"block":{"attributes":{"computer_spark_runtime_version":{"type":"string","optional":true},"offline_connection_name":{"type":"string","optional":true},"online_connection_name":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true},"managed_network":{"nesting_mode":3,"block":{"attributes":{"isolation_mode":{"type":"string","optional":true,"computed":true},"provision_on_creation_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true},"serverless_compute":{"nesting_mode":3,"block":{"attributes":{"public_ip_enabled":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_machine_learning_workspace_network_outbound_rule_fqdn":{"block":{"attributes":{"destination_fqdn":{"type":"string","required":true},"name":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_machine_learning_workspace_network_outbound_rule_private_endpoint":{"block":{"attributes":{"name":{"type":"string","required":true},"service_resource_id":{"type":"string","required":true},"spark_enabled":{"type":"bool","optional":true,"default":false},"sub_resource_target":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_machine_learning_workspace_network_outbound_rule_service_tag":{"block":{"attributes":{"name":{"type":"string","required":true},"port_ranges":{"type":"string","required":true},"protocol":{"type":"string","required":true},"service_tag":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_maintenance_assignment_dedicated_host":{"block":{"attributes":{"dedicated_host_id":{"type":"string","required":true},"location":{"type":"string","required":true},"maintenance_configuration_id":{"type":"string","required":true}}}},"azurerm_maintenance_assignment_dynamic_scope":{"block":{"attributes":{"maintenance_configuration_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"locations":{"type":["list","string"],"optional":true,"at_least_one_of":["filter.0.locations","filter.0.os_types","filter.0.resource_groups","filter.0.resource_types","filter.0.tags"]},"os_types":{"type":["list","string"],"optional":true,"at_least_one_of":["filter.0.locations","filter.0.os_types","filter.0.resource_groups","filter.0.resource_types","filter.0.tags"]},"resource_groups":{"type":["list","string"],"optional":true,"at_least_one_of":["filter.0.locations","filter.0.os_types","filter.0.resource_groups","filter.0.resource_types","filter.0.tags"]},"resource_types":{"type":["list","string"],"optional":true,"at_least_one_of":["filter.0.locations","filter.0.os_types","filter.0.resource_groups","filter.0.resource_types","filter.0.tags"]},"tag_filter":{"type":"string","optional":true,"default":"Any","required_with":["filter.0.tags"]}},"block_types":{"tags":{"nesting_mode":3,"block":{"attributes":{"tag":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["filter.0.locations","filter.0.os_types","filter.0.resource_groups","filter.0.resource_types","filter.0.tags"]}}},"required":true}}}},"azurerm_maintenance_assignment_virtual_machine":{"block":{"attributes":{"location":{"type":"string","required":true},"maintenance_configuration_id":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}}}},"azurerm_maintenance_assignment_virtual_machine_scale_set":{"block":{"attributes":{"location":{"type":"string","required":true},"maintenance_configuration_id":{"type":"string","required":true},"virtual_machine_scale_set_id":{"type":"string","required":true}}}},"azurerm_maintenance_configuration":{"block":{"attributes":{"in_guest_user_patch_mode":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"properties":{"type":["map","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"scope":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"visibility":{"type":"string","optional":true,"default":"Custom"}},"block_types":{"install_patches":{"nesting_mode":3,"block":{"attributes":{"reboot":{"type":"string","optional":true}},"block_types":{"linux":{"nesting_mode":3,"block":{"attributes":{"classifications_to_include":{"type":["list","string"],"optional":true},"package_names_mask_to_exclude":{"type":["list","string"],"optional":true},"package_names_mask_to_include":{"type":["list","string"],"optional":true}}},"optional":true},"windows":{"nesting_mode":3,"block":{"attributes":{"classifications_to_include":{"type":["list","string"],"optional":true},"kb_numbers_to_exclude":{"type":["list","string"],"optional":true},"kb_numbers_to_include":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"window":{"nesting_mode":3,"block":{"attributes":{"duration":{"type":"string","optional":true},"expiration_date_time":{"type":"string","optional":true},"recur_every":{"type":"string","optional":true},"start_date_time":{"type":"string","required":true},"time_zone":{"type":"string","required":true}}},"optional":true}}}},"azurerm_managed_application":{"block":{"attributes":{"application_definition_id":{"type":"string","optional":true},"kind":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_resource_group_name":{"type":"string","required":true},"name":{"type":"string","required":true},"outputs":{"type":["map","string"],"computed":true},"parameter_values":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"promotion_code":{"type":"string","optional":true},"publisher":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true}}}},"azurerm_managed_application_definition":{"block":{"attributes":{"create_ui_definition":{"type":"string","optional":true,"conflicts_with":["package_file_uri"],"required_with":["main_template"]},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"location":{"type":"string","required":true},"lock_level":{"type":"string","required":true},"main_template":{"type":"string","optional":true,"conflicts_with":["package_file_uri"],"required_with":["create_ui_definition"]},"name":{"type":"string","required":true},"package_enabled":{"type":"bool","optional":true,"default":true},"package_file_uri":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"authorization":{"nesting_mode":4,"block":{"attributes":{"role_definition_id":{"type":"string","required":true},"service_principal_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_managed_disk":{"block":{"attributes":{"create_option":{"type":"string","required":true},"disk_access_id":{"type":"string","optional":true},"disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["secure_vm_disk_encryption_set_id"]},"disk_iops_read_only":{"type":"number","optional":true,"computed":true},"disk_iops_read_write":{"type":"number","optional":true,"computed":true},"disk_mbps_read_only":{"type":"number","optional":true,"computed":true},"disk_mbps_read_write":{"type":"number","optional":true,"computed":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"edge_zone":{"type":"string","optional":true},"gallery_image_reference_id":{"type":"string","optional":true,"conflicts_with":["image_reference_id"]},"hyper_v_generation":{"type":"string","optional":true},"image_reference_id":{"type":"string","optional":true,"conflicts_with":["gallery_image_reference_id"]},"location":{"type":"string","required":true},"logical_sector_size":{"type":"number","optional":true,"computed":true},"max_shares":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"network_access_policy":{"type":"string","optional":true,"default":"AllowAll"},"on_demand_bursting_enabled":{"type":"bool","optional":true},"optimized_frequent_attach_enabled":{"type":"bool","optional":true,"default":false},"os_type":{"type":"string","optional":true},"performance_plus_enabled":{"type":"bool","optional":true,"default":false},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"secure_vm_disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["disk_encryption_set_id"]},"security_type":{"type":"string","optional":true},"source_resource_id":{"type":"string","optional":true},"source_uri":{"type":"string","optional":true,"computed":true},"storage_account_id":{"type":"string","optional":true},"storage_account_type":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tier":{"type":"string","optional":true,"computed":true},"trusted_launch_enabled":{"type":"bool","optional":true},"upload_size_bytes":{"type":"number","optional":true},"zone":{"type":"string","optional":true}},"block_types":{"encryption_settings":{"nesting_mode":3,"block":{"block_types":{"disk_encryption_key":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"required":true},"key_encryption_key":{"nesting_mode":3,"block":{"attributes":{"key_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_managed_disk_sas_token":{"block":{"attributes":{"access_level":{"type":"string","required":true},"duration_in_seconds":{"type":"number","required":true},"managed_disk_id":{"type":"string","required":true},"sas_url":{"type":"string","computed":true}}}},"azurerm_managed_lustre_file_system":{"block":{"attributes":{"location":{"type":"string","required":true},"mgs_address":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"storage_capacity_in_tb":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"required":true}},"block_types":{"encryption_key":{"nesting_mode":3,"block":{"attributes":{"key_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true},"hsm_setting":{"nesting_mode":3,"block":{"attributes":{"container_id":{"type":"string","required":true},"import_prefix":{"type":"string","optional":true},"logging_container_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"maintenance_window":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"string","required":true},"time_of_day_in_utc":{"type":"string","required":true}}},"required":true},"root_squash":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"no_squash_nids":{"type":"string","required":true},"squash_gid":{"type":"number","optional":true,"default":0},"squash_uid":{"type":"number","optional":true,"default":0}}},"optional":true}}}},"azurerm_managed_redis":{"block":{"attributes":{"high_availability_enabled":{"type":"bool","optional":true,"default":true},"hostname":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","required":true}}},"optional":true},"default_database":{"nesting_mode":3,"block":{"attributes":{"access_keys_authentication_enabled":{"type":"bool","optional":true,"default":false},"client_protocol":{"type":"string","optional":true,"default":"Encrypted"},"clustering_policy":{"type":"string","optional":true,"default":"OSSCluster"},"eviction_policy":{"type":"string","optional":true,"default":"VolatileLRU"},"geo_replication_group_name":{"type":"string","optional":true},"id":{"type":"string","computed":true},"persistence_append_only_file_backup_frequency":{"type":"string","optional":true,"conflicts_with":["default_database.0.geo_replication_group_name","default_database.0.persistence_redis_database_backup_frequency"]},"persistence_redis_database_backup_frequency":{"type":"string","optional":true,"conflicts_with":["default_database.0.geo_replication_group_name","default_database.0.persistence_append_only_file_backup_frequency"]},"port":{"type":"number","computed":true},"primary_access_key":{"type":"string","computed":true},"secondary_access_key":{"type":"string","computed":true}},"block_types":{"module":{"nesting_mode":3,"block":{"attributes":{"args":{"type":"string","optional":true},"name":{"type":"string","required":true},"version":{"type":"string","computed":true}}},"optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_managed_redis_geo_replication":{"block":{"attributes":{"linked_managed_redis_ids":{"type":["set","string"],"required":true},"managed_redis_id":{"type":"string","required":true}}}},"azurerm_management_group":{"block":{"attributes":{"display_name":{"type":"string","optional":true,"computed":true},"name":{"type":"string","optional":true,"computed":true},"parent_management_group_id":{"type":"string","optional":true,"computed":true},"subscription_ids":{"type":["set","string"],"optional":true,"computed":true},"tenant_scoped_id":{"type":"string","computed":true}}}},"azurerm_management_group_policy_assignment":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"enforce":{"type":"bool","optional":true,"default":true},"location":{"type":"string","optional":true},"management_group_id":{"type":"string","required":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"not_scopes":{"type":["list","string"],"optional":true},"parameters":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"non_compliance_message":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true}}},"optional":true},"overrides":{"nesting_mode":3,"block":{"attributes":{"value":{"type":"string","required":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","optional":true,"default":"policyDefinitionReferenceId"},"not_in":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"resource_selectors":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","required":true},"not_in":{"type":["list","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_management_group_policy_exemption":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"exemption_category":{"type":"string","required":true},"expires_on":{"type":"string","optional":true},"management_group_id":{"type":"string","required":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_ids":{"type":["list","string"],"optional":true}}}},"azurerm_management_group_policy_remediation":{"block":{"attributes":{"failure_percentage":{"type":"number","optional":true},"location_filters":{"type":["list","string"],"optional":true},"management_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"parallel_deployments":{"type":"number","optional":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true},"resource_count":{"type":"number","optional":true}}}},"azurerm_management_group_policy_set_definition":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"management_group_id":{"type":"string","required":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"policy_type":{"type":"string","required":true}},"block_types":{"policy_definition_group":{"nesting_mode":4,"block":{"attributes":{"additional_metadata_resource_id":{"type":"string","optional":true},"category":{"type":"string","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"name":{"type":"string","required":true}}},"optional":true},"policy_definition_reference":{"nesting_mode":3,"block":{"attributes":{"parameter_values":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true},"policy_group_names":{"type":["set","string"],"optional":true},"reference_id":{"type":"string","optional":true,"computed":true},"version":{"type":"string","optional":true,"computed":true}}},"required":true}}}},"azurerm_management_group_subscription_association":{"block":{"attributes":{"management_group_id":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}}}},"azurerm_management_group_template_deployment":{"block":{"attributes":{"debug_level":{"type":"string","optional":true},"location":{"type":"string","required":true},"management_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"output_content":{"type":"string","computed":true},"parameters_content":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"template_content":{"type":"string","optional":true,"computed":true,"exactly_one_of":["template_content","template_spec_version_id"]},"template_spec_version_id":{"type":"string","optional":true,"exactly_one_of":["template_content","template_spec_version_id"]}}}},"azurerm_management_lock":{"block":{"attributes":{"lock_level":{"type":"string","required":true},"name":{"type":"string","required":true},"notes":{"type":"string","optional":true},"scope":{"type":"string","required":true}}}},"azurerm_maps_account":{"block":{"attributes":{"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"x_ms_client_id":{"type":"string","computed":true}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["list","string"],"required":true}}},"optional":true},"data_store":{"nesting_mode":3,"block":{"attributes":{"storage_account_id":{"type":"string","optional":true},"unique_name":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_maps_creator":{"block":{"attributes":{"location":{"type":"string","required":true},"maps_account_id":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_units":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_marketplace_agreement":{"block":{"attributes":{"license_text_link":{"type":"string","computed":true},"offer":{"type":"string","required":true},"plan":{"type":"string","required":true},"privacy_policy_link":{"type":"string","computed":true},"publisher":{"type":"string","required":true}}}},"azurerm_marketplace_role_assignment":{"block":{"attributes":{"condition":{"type":"string","optional":true,"required_with":["condition_version"]},"condition_version":{"type":"string","optional":true,"required_with":["condition"]},"delegated_managed_identity_resource_id":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","optional":true},"principal_id":{"type":"string","required":true},"principal_type":{"type":"string","computed":true},"role_definition_id":{"type":"string","optional":true,"conflicts_with":["role_definition_name"]},"role_definition_name":{"type":"string","optional":true,"conflicts_with":["role_definition_id"]},"skip_service_principal_aad_check":{"type":"bool","optional":true,"default":false}}}},"azurerm_mobile_network":{"block":{"attributes":{"location":{"type":"string","required":true},"mobile_country_code":{"type":"string","required":true},"mobile_network_code":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"service_key":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_mobile_network_attached_data_network":{"block":{"attributes":{"dns_addresses":{"type":["list","string"],"required":true},"location":{"type":"string","required":true},"mobile_network_data_network_name":{"type":"string","required":true},"mobile_network_packet_core_data_plane_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"user_equipment_address_pool_prefixes":{"type":["list","string"],"optional":true,"at_least_one_of":["user_equipment_address_pool_prefixes","user_equipment_static_address_pool_prefixes"]},"user_equipment_static_address_pool_prefixes":{"type":["list","string"],"optional":true,"at_least_one_of":["user_equipment_address_pool_prefixes","user_equipment_static_address_pool_prefixes"]},"user_plane_access_ipv4_address":{"type":"string","optional":true},"user_plane_access_ipv4_gateway":{"type":"string","optional":true},"user_plane_access_ipv4_subnet":{"type":"string","optional":true},"user_plane_access_name":{"type":"string","optional":true}},"block_types":{"network_address_port_translation":{"nesting_mode":3,"block":{"attributes":{"icmp_pinhole_timeout_in_seconds":{"type":"number","optional":true,"default":180},"pinhole_maximum_number":{"type":"number","optional":true,"default":65536},"tcp_pinhole_timeout_in_seconds":{"type":"number","optional":true,"default":180},"tcp_port_reuse_minimum_hold_time_in_seconds":{"type":"number","optional":true,"default":120},"udp_pinhole_timeout_in_seconds":{"type":"number","optional":true,"default":180},"udp_port_reuse_minimum_hold_time_in_seconds":{"type":"number","optional":true,"default":60}},"block_types":{"port_range":{"nesting_mode":3,"block":{"attributes":{"maximum":{"type":"number","optional":true,"default":49999},"minimum":{"type":"number","optional":true,"default":1024}}},"optional":true}}},"optional":true}}}},"azurerm_mobile_network_data_network":{"block":{"attributes":{"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_mobile_network_packet_core_control_plane":{"block":{"attributes":{"control_plane_access_ipv4_address":{"type":"string","optional":true},"control_plane_access_ipv4_gateway":{"type":"string","optional":true},"control_plane_access_ipv4_subnet":{"type":"string","optional":true},"control_plane_access_name":{"type":"string","optional":true},"core_network_technology":{"type":"string","optional":true},"interoperability_settings_json":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"site_ids":{"type":["list","string"],"required":true},"sku":{"type":"string","required":true},"software_version":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"user_equipment_mtu_in_bytes":{"type":"number","optional":true,"default":1440}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"local_diagnostics_access":{"nesting_mode":3,"block":{"attributes":{"authentication_type":{"type":"string","required":true},"https_server_certificate_url":{"type":"string","optional":true}}},"required":true},"platform":{"nesting_mode":3,"block":{"attributes":{"arc_kubernetes_cluster_id":{"type":"string","optional":true,"at_least_one_of":["platform.0.edge_device_id","platform.0.stack_hci_cluster_id","platform.0.arc_kubernetes_cluster_id","platform.0.custom_location_id"]},"custom_location_id":{"type":"string","optional":true,"at_least_one_of":["platform.0.edge_device_id","platform.0.stack_hci_cluster_id","platform.0.arc_kubernetes_cluster_id","platform.0.custom_location_id"]},"edge_device_id":{"type":"string","optional":true,"at_least_one_of":["platform.0.edge_device_id","platform.0.stack_hci_cluster_id","platform.0.arc_kubernetes_cluster_id","platform.0.custom_location_id"]},"stack_hci_cluster_id":{"type":"string","optional":true,"at_least_one_of":["platform.0.edge_device_id","platform.0.stack_hci_cluster_id","platform.0.arc_kubernetes_cluster_id","platform.0.custom_location_id"]},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mobile_network_packet_core_data_plane":{"block":{"attributes":{"location":{"type":"string","required":true},"mobile_network_packet_core_control_plane_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"user_plane_access_ipv4_address":{"type":"string","optional":true},"user_plane_access_ipv4_gateway":{"type":"string","optional":true},"user_plane_access_ipv4_subnet":{"type":"string","optional":true},"user_plane_access_name":{"type":"string","optional":true}}}},"azurerm_mobile_network_service":{"block":{"attributes":{"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"service_precedence":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"pcc_rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"precedence":{"type":"number","required":true},"traffic_control_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"qos_policy":{"nesting_mode":3,"block":{"attributes":{"allocation_and_retention_priority_level":{"type":"number","optional":true},"preemption_capability":{"type":"string","optional":true,"default":"NotPreempt"},"preemption_vulnerability":{"type":"string","optional":true,"default":"Preemptable"},"qos_indicator":{"type":"number","required":true}},"block_types":{"guaranteed_bit_rate":{"nesting_mode":3,"block":{"attributes":{"downlink":{"type":"string","required":true},"uplink":{"type":"string","required":true}}},"optional":true},"maximum_bit_rate":{"nesting_mode":3,"block":{"attributes":{"downlink":{"type":"string","required":true},"uplink":{"type":"string","required":true}}},"required":true}}},"optional":true},"service_data_flow_template":{"nesting_mode":3,"block":{"attributes":{"direction":{"type":"string","required":true},"name":{"type":"string","required":true},"ports":{"type":["list","string"],"optional":true},"protocol":{"type":["list","string"],"required":true},"remote_ip_list":{"type":["list","string"],"required":true}}},"required":true}}},"required":true},"service_qos_policy":{"nesting_mode":3,"block":{"attributes":{"allocation_and_retention_priority_level":{"type":"number","optional":true,"default":9},"preemption_capability":{"type":"string","optional":true},"preemption_vulnerability":{"type":"string","optional":true},"qos_indicator":{"type":"number","optional":true}},"block_types":{"maximum_bit_rate":{"nesting_mode":3,"block":{"attributes":{"downlink":{"type":"string","required":true},"uplink":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_mobile_network_sim":{"block":{"attributes":{"authentication_key":{"type":"string","required":true},"device_type":{"type":"string","optional":true},"integrated_circuit_card_identifier":{"type":"string","required":true},"international_mobile_subscriber_identity":{"type":"string","required":true},"mobile_network_sim_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"operator_key_code":{"type":"string","required":true},"sim_policy_id":{"type":"string","optional":true},"sim_state":{"type":"string","computed":true},"vendor_key_fingerprint":{"type":"string","computed":true},"vendor_name":{"type":"string","computed":true}},"block_types":{"static_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"attached_data_network_id":{"type":"string","required":true},"slice_id":{"type":"string","required":true},"static_ipv4_address":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_mobile_network_sim_group":{"block":{"attributes":{"encryption_key_url":{"type":"string","optional":true},"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mobile_network_sim_policy":{"block":{"attributes":{"default_slice_id":{"type":"string","required":true},"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"rat_frequency_selection_priority_index":{"type":"number","optional":true},"registration_timer_in_seconds":{"type":"number","optional":true,"default":3240},"tags":{"type":["map","string"],"optional":true}},"block_types":{"slice":{"nesting_mode":3,"block":{"attributes":{"default_data_network_id":{"type":"string","required":true},"slice_id":{"type":"string","required":true}},"block_types":{"data_network":{"nesting_mode":3,"block":{"attributes":{"additional_allowed_session_types":{"type":["list","string"],"optional":true},"allocation_and_retention_priority_level":{"type":"number","optional":true,"default":0},"allowed_services_ids":{"type":["list","string"],"required":true},"data_network_id":{"type":"string","required":true},"default_session_type":{"type":"string","optional":true,"default":"IPv4"},"max_buffered_packets":{"type":"number","optional":true,"default":10},"preemption_capability":{"type":"string","optional":true,"default":"NotPreempt"},"preemption_vulnerability":{"type":"string","optional":true,"default":"NotPreemptable"},"qos_indicator":{"type":"number","required":true}},"block_types":{"session_aggregate_maximum_bit_rate":{"nesting_mode":3,"block":{"attributes":{"downlink":{"type":"string","required":true},"uplink":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true},"user_equipment_aggregate_maximum_bit_rate":{"nesting_mode":3,"block":{"attributes":{"downlink":{"type":"string","required":true},"uplink":{"type":"string","required":true}}},"required":true}}}},"azurerm_mobile_network_site":{"block":{"attributes":{"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"network_function_ids":{"type":["list","string"],"computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_mobile_network_slice":{"block":{"attributes":{"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"mobile_network_id":{"type":"string","required":true},"name":{"type":"string","required":true},"slice_differentiator":{"type":"string","optional":true,"computed":true,"conflicts_with":["single_network_slice_selection_assistance_information"]},"slice_service_type":{"type":"number","optional":true,"computed":true,"conflicts_with":["single_network_slice_selection_assistance_information"]},"tags":{"type":["map","string"],"optional":true}},"block_types":{"single_network_slice_selection_assistance_information":{"nesting_mode":3,"block":{"attributes":{"slice_differentiator":{"type":"string","optional":true},"slice_service_type":{"type":"number","required":true}}},"optional":true,"computed":true,"conflicts_with":["slice_service_type","slice_differentiator"]}}}},"azurerm_mongo_cluster":{"block":{"attributes":{"administrator_password":{"type":"string","optional":true,"required_with":["administrator_username"]},"administrator_username":{"type":"string","optional":true,"required_with":["administrator_password"]},"compute_tier":{"type":"string","optional":true},"connection_strings":{"type":["list",["object",{"description":"string","name":"string","value":"string"}]],"computed":true},"create_mode":{"type":"string","optional":true,"default":"Default"},"high_availability_mode":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"preview_features":{"type":["list","string"],"optional":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"shard_count":{"type":"number","optional":true},"source_location":{"type":"string","optional":true,"required_with":["source_server_id"]},"source_server_id":{"type":"string","optional":true},"storage_size_in_gb":{"type":"number","optional":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true}}}},"azurerm_mongo_cluster_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"mongo_cluster_id":{"type":"string","required":true},"name":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_monitor_aad_diagnostic_setting":{"block":{"attributes":{"eventhub_authorization_rule_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id"]},"eventhub_name":{"type":"string","optional":true},"log_analytics_workspace_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id"]},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id"]}},"block_types":{"enabled_log":{"nesting_mode":4,"block":{"attributes":{"category":{"type":"string","required":true}},"block_types":{"retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true,"default":0},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true}}},"optional":true}}}},"azurerm_monitor_action_group":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","optional":true,"default":"global"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"short_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"arm_role_receiver":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"role_id":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true}}},"optional":true},"automation_runbook_receiver":{"nesting_mode":3,"block":{"attributes":{"automation_account_id":{"type":"string","required":true},"is_global_runbook":{"type":"bool","required":true},"name":{"type":"string","required":true},"runbook_name":{"type":"string","required":true},"service_uri":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true,"default":false},"webhook_resource_id":{"type":"string","required":true}}},"optional":true},"azure_app_push_receiver":{"nesting_mode":3,"block":{"attributes":{"email_address":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true},"azure_function_receiver":{"nesting_mode":3,"block":{"attributes":{"function_app_resource_id":{"type":"string","required":true},"function_name":{"type":"string","required":true},"http_trigger_url":{"type":"string","required":true},"name":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true}}},"optional":true},"email_receiver":{"nesting_mode":3,"block":{"attributes":{"email_address":{"type":"string","required":true},"name":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true}}},"optional":true},"event_hub_receiver":{"nesting_mode":3,"block":{"attributes":{"event_hub_name":{"type":"string","required":true},"event_hub_namespace":{"type":"string","required":true},"name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true},"tenant_id":{"type":"string","optional":true,"computed":true},"use_common_alert_schema":{"type":"bool","optional":true}}},"optional":true},"itsm_receiver":{"nesting_mode":3,"block":{"attributes":{"connection_id":{"type":"string","required":true},"name":{"type":"string","required":true},"region":{"type":"string","required":true},"ticket_configuration":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}},"optional":true},"logic_app_receiver":{"nesting_mode":3,"block":{"attributes":{"callback_url":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_id":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true}}},"optional":true},"sms_receiver":{"nesting_mode":3,"block":{"attributes":{"country_code":{"type":"string","required":true},"name":{"type":"string","required":true},"phone_number":{"type":"string","required":true}}},"optional":true},"voice_receiver":{"nesting_mode":3,"block":{"attributes":{"country_code":{"type":"string","required":true},"name":{"type":"string","required":true},"phone_number":{"type":"string","required":true}}},"optional":true},"webhook_receiver":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"service_uri":{"type":"string","required":true},"use_common_alert_schema":{"type":"bool","optional":true}},"block_types":{"aad_auth":{"nesting_mode":3,"block":{"attributes":{"identifier_uri":{"type":"string","optional":true,"computed":true},"object_id":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true}}},"optional":true}}}},"azurerm_monitor_activity_log_alert":{"block":{"attributes":{"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["set","string"],"required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_group_id":{"type":"string","required":true},"webhook_properties":{"type":["map","string"],"optional":true}}},"optional":true},"criteria":{"nesting_mode":3,"block":{"attributes":{"caller":{"type":"string","optional":true},"category":{"type":"string","required":true},"level":{"type":"string","optional":true,"conflicts_with":["criteria.0.levels"]},"levels":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.level"]},"operation_name":{"type":"string","optional":true},"recommendation_category":{"type":"string","optional":true,"conflicts_with":["criteria.0.recommendation_type"]},"recommendation_impact":{"type":"string","optional":true,"conflicts_with":["criteria.0.recommendation_type"]},"recommendation_type":{"type":"string","optional":true,"conflicts_with":["criteria.0.recommendation_category","criteria.0.recommendation_impact"]},"resource_group":{"type":"string","optional":true,"conflicts_with":["criteria.0.resource_groups"]},"resource_groups":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.resource_group"]},"resource_id":{"type":"string","optional":true,"conflicts_with":["criteria.0.resource_ids"]},"resource_ids":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.resource_id"]},"resource_provider":{"type":"string","optional":true,"conflicts_with":["criteria.0.resource_providers"]},"resource_providers":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.resource_provider"]},"resource_type":{"type":"string","optional":true,"conflicts_with":["criteria.0.resource_types"]},"resource_types":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.resource_type"]},"status":{"type":"string","optional":true,"conflicts_with":["criteria.0.statuses"]},"statuses":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.status"]},"sub_status":{"type":"string","optional":true,"conflicts_with":["criteria.0.sub_statuses"]},"sub_statuses":{"type":["list","string"],"optional":true,"conflicts_with":["criteria.0.sub_status"]}},"block_types":{"resource_health":{"nesting_mode":3,"block":{"attributes":{"current":{"type":["set","string"],"optional":true},"previous":{"type":["set","string"],"optional":true},"reason":{"type":["set","string"],"optional":true}}},"optional":true,"computed":true,"conflicts_with":["criteria.0.caller","criteria.0.service_health"]},"service_health":{"nesting_mode":3,"block":{"attributes":{"events":{"type":["set","string"],"optional":true},"locations":{"type":["set","string"],"optional":true},"services":{"type":["set","string"],"optional":true}}},"optional":true,"computed":true,"conflicts_with":["criteria.0.caller","criteria.0.resource_health"]}}},"required":true}}}},"azurerm_monitor_alert_processing_rule_action_group":{"block":{"attributes":{"add_action_group_ids":{"type":["list","string"],"required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["list","string"],"required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"condition":{"nesting_mode":3,"block":{"block_types":{"alert_context":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"alert_rule_id":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"alert_rule_name":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"description":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"monitor_condition":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"monitor_service":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"severity":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"signal_type":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource_group":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource_type":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]}}},"optional":true},"schedule":{"nesting_mode":3,"block":{"attributes":{"effective_from":{"type":"string","optional":true},"effective_until":{"type":"string","optional":true},"time_zone":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"recurrence":{"nesting_mode":3,"block":{"block_types":{"daily":{"nesting_mode":3,"block":{"attributes":{"end_time":{"type":"string","required":true},"start_time":{"type":"string","required":true}}},"optional":true},"monthly":{"nesting_mode":3,"block":{"attributes":{"days_of_month":{"type":["list","number"],"required":true},"end_time":{"type":"string","optional":true},"start_time":{"type":"string","optional":true}}},"optional":true},"weekly":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["list","string"],"required":true},"end_time":{"type":"string","optional":true},"start_time":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_monitor_alert_processing_rule_suppression":{"block":{"attributes":{"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["list","string"],"required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"condition":{"nesting_mode":3,"block":{"block_types":{"alert_context":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"alert_rule_id":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"alert_rule_name":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"description":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"monitor_condition":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"monitor_service":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"severity":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"signal_type":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource_group":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]},"target_resource_type":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"at_least_one_of":["condition.0.alert_context","condition.0.alert_rule_id","condition.0.alert_rule_name","condition.0.description","condition.0.monitor_condition","condition.0.monitor_service","condition.0.severity","condition.0.signal_type","condition.0.target_resource","condition.0.target_resource_group","condition.0.target_resource_type"]}}},"optional":true},"schedule":{"nesting_mode":3,"block":{"attributes":{"effective_from":{"type":"string","optional":true},"effective_until":{"type":"string","optional":true},"time_zone":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"recurrence":{"nesting_mode":3,"block":{"block_types":{"daily":{"nesting_mode":3,"block":{"attributes":{"end_time":{"type":"string","required":true},"start_time":{"type":"string","required":true}}},"optional":true},"monthly":{"nesting_mode":3,"block":{"attributes":{"days_of_month":{"type":["list","number"],"required":true},"end_time":{"type":"string","optional":true},"start_time":{"type":"string","optional":true}}},"optional":true},"weekly":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["list","string"],"required":true},"end_time":{"type":"string","optional":true},"start_time":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_monitor_alert_prometheus_rule_group":{"block":{"attributes":{"cluster_name":{"type":"string","optional":true},"description":{"type":"string","optional":true},"interval":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"rule_group_enabled":{"type":"bool","optional":true},"scopes":{"type":["list","string"],"required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"alert":{"type":"string","optional":true},"annotations":{"type":["map","string"],"optional":true},"enabled":{"type":"bool","optional":true},"expression":{"type":"string","required":true},"for":{"type":"string","optional":true},"labels":{"type":["map","string"],"optional":true},"record":{"type":"string","optional":true},"severity":{"type":"number","optional":true}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_group_id":{"type":"string","required":true},"action_properties":{"type":["map","string"],"optional":true}}},"optional":true},"alert_resolution":{"nesting_mode":3,"block":{"attributes":{"auto_resolved":{"type":"bool","optional":true},"time_to_resolve":{"type":"string","optional":true}}},"optional":true}}},"required":true}}}},"azurerm_monitor_autoscale_setting":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_resource_id":{"type":"string","required":true}},"block_types":{"notification":{"nesting_mode":3,"block":{"block_types":{"email":{"nesting_mode":3,"block":{"attributes":{"custom_emails":{"type":["list","string"],"optional":true},"send_to_subscription_administrator":{"type":"bool","optional":true,"default":false},"send_to_subscription_co_administrator":{"type":"bool","optional":true,"default":false}}},"optional":true,"at_least_one_of":["notification.0.email","notification.0.webhook"]},"webhook":{"nesting_mode":3,"block":{"attributes":{"properties":{"type":["map","string"],"optional":true},"service_uri":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["notification.0.email","notification.0.webhook"]}}},"optional":true},"predictive":{"nesting_mode":3,"block":{"attributes":{"look_ahead_time":{"type":"string","optional":true},"scale_mode":{"type":"string","required":true}}},"optional":true},"profile":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"capacity":{"nesting_mode":3,"block":{"attributes":{"default":{"type":"number","required":true},"maximum":{"type":"number","required":true},"minimum":{"type":"number","required":true}}},"required":true},"fixed_date":{"nesting_mode":3,"block":{"attributes":{"end":{"type":"string","required":true},"start":{"type":"string","required":true},"timezone":{"type":"string","optional":true,"default":"UTC"}}},"optional":true},"recurrence":{"nesting_mode":3,"block":{"attributes":{"days":{"type":["list","string"],"required":true},"hours":{"type":["list","number"],"required":true},"minutes":{"type":["list","number"],"required":true},"timezone":{"type":"string","optional":true,"default":"UTC"}}},"optional":true},"rule":{"nesting_mode":3,"block":{"block_types":{"metric_trigger":{"nesting_mode":3,"block":{"attributes":{"divide_by_instance_count":{"type":"bool","optional":true},"metric_name":{"type":"string","required":true},"metric_namespace":{"type":"string","optional":true},"metric_resource_id":{"type":"string","required":true},"operator":{"type":"string","required":true},"statistic":{"type":"string","required":true},"threshold":{"type":"number","required":true},"time_aggregation":{"type":"string","required":true},"time_grain":{"type":"string","required":true},"time_window":{"type":"string","required":true}},"block_types":{"dimensions":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true}}},"required":true},"scale_action":{"nesting_mode":3,"block":{"attributes":{"cooldown":{"type":"string","required":true},"direction":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"number","required":true}}},"required":true}}},"optional":true}}},"required":true}}}},"azurerm_monitor_data_collection_endpoint":{"block":{"attributes":{"configuration_access_endpoint":{"type":"string","computed":true},"description":{"type":"string","optional":true},"immutable_id":{"type":"string","computed":true},"kind":{"type":"string","optional":true},"location":{"type":"string","required":true},"logs_ingestion_endpoint":{"type":"string","computed":true},"metrics_ingestion_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_monitor_data_collection_rule":{"block":{"attributes":{"data_collection_endpoint_id":{"type":"string","optional":true},"description":{"type":"string","optional":true},"immutable_id":{"type":"string","computed":true},"kind":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"data_flow":{"nesting_mode":3,"block":{"attributes":{"built_in_transform":{"type":"string","optional":true},"destinations":{"type":["list","string"],"required":true},"output_stream":{"type":"string","optional":true},"streams":{"type":["list","string"],"required":true},"transform_kql":{"type":"string","optional":true}}},"required":true},"data_sources":{"nesting_mode":3,"block":{"block_types":{"data_import":{"nesting_mode":3,"block":{"block_types":{"event_hub_data_source":{"nesting_mode":3,"block":{"attributes":{"consumer_group":{"type":"string","optional":true},"name":{"type":"string","required":true},"stream":{"type":"string","required":true}}},"required":true}}},"optional":true},"extension":{"nesting_mode":3,"block":{"attributes":{"extension_json":{"type":"string","optional":true},"extension_name":{"type":"string","required":true},"input_data_sources":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true},"iis_log":{"nesting_mode":3,"block":{"attributes":{"log_directories":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true},"log_file":{"nesting_mode":3,"block":{"attributes":{"file_patterns":{"type":["list","string"],"required":true},"format":{"type":"string","required":true},"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}},"block_types":{"settings":{"nesting_mode":3,"block":{"block_types":{"text":{"nesting_mode":3,"block":{"attributes":{"record_start_timestamp_format":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true},"performance_counter":{"nesting_mode":3,"block":{"attributes":{"counter_specifiers":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"sampling_frequency_in_seconds":{"type":"number","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true},"platform_telemetry":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true},"prometheus_forwarder":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}},"block_types":{"label_include_filter":{"nesting_mode":4,"block":{"attributes":{"label":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"syslog":{"nesting_mode":3,"block":{"attributes":{"facility_names":{"type":["list","string"],"required":true},"log_levels":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true},"windows_event_log":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true},"x_path_queries":{"type":["list","string"],"required":true}}},"optional":true},"windows_firewall_log":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"streams":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true},"destinations":{"nesting_mode":3,"block":{"block_types":{"azure_monitor_metrics":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"event_hub":{"nesting_mode":3,"block":{"attributes":{"event_hub_id":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"event_hub_direct":{"nesting_mode":3,"block":{"attributes":{"event_hub_id":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"log_analytics":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"workspace_resource_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"monitor_account":{"nesting_mode":3,"block":{"attributes":{"monitor_account_id":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"storage_blob":{"nesting_mode":3,"block":{"attributes":{"container_name":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"storage_blob_direct":{"nesting_mode":3,"block":{"attributes":{"container_name":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]},"storage_table_direct":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"table_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["destinations.0.azure_monitor_metrics","destinations.0.event_hub","destinations.0.event_hub_direct","destinations.0.log_analytics","destinations.0.monitor_account","destinations.0.storage_blob","destinations.0.storage_blob_direct","destinations.0.storage_table_direct"]}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"stream_declaration":{"nesting_mode":4,"block":{"attributes":{"stream_name":{"type":"string","required":true}},"block_types":{"column":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true}}},"optional":true}}}},"azurerm_monitor_data_collection_rule_association":{"block":{"attributes":{"data_collection_endpoint_id":{"type":"string","optional":true,"exactly_one_of":["data_collection_endpoint_id","data_collection_rule_id"]},"data_collection_rule_id":{"type":"string","optional":true,"exactly_one_of":["data_collection_endpoint_id","data_collection_rule_id"],"required_with":["name"]},"description":{"type":"string","optional":true},"name":{"type":"string","optional":true,"default":"configurationAccessEndpoint"},"target_resource_id":{"type":"string","required":true}}}},"azurerm_monitor_diagnostic_setting":{"block":{"attributes":{"eventhub_authorization_rule_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id","partner_solution_id"]},"eventhub_name":{"type":"string","optional":true},"log_analytics_destination_type":{"type":"string","optional":true,"computed":true},"log_analytics_workspace_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id","partner_solution_id"]},"name":{"type":"string","required":true},"partner_solution_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id","partner_solution_id"]},"storage_account_id":{"type":"string","optional":true,"at_least_one_of":["eventhub_authorization_rule_id","log_analytics_workspace_id","storage_account_id","partner_solution_id"]},"target_resource_id":{"type":"string","required":true}},"block_types":{"enabled_log":{"nesting_mode":4,"block":{"attributes":{"category":{"type":"string","optional":true},"category_group":{"type":"string","optional":true}},"block_types":{"retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true},"enabled":{"type":"bool","required":true}}},"optional":true}}},"optional":true,"at_least_one_of":["enabled_log","enabled_metric","metric"]},"enabled_metric":{"nesting_mode":4,"block":{"attributes":{"category":{"type":"string","required":true}}},"optional":true,"computed":true,"conflicts_with":["metric"],"at_least_one_of":["enabled_log","enabled_metric","metric"]},"metric":{"nesting_mode":4,"block":{"attributes":{"category":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true},"enabled":{"type":"bool","required":true}}},"optional":true}}},"optional":true,"computed":true,"conflicts_with":["enabled_metric"],"at_least_one_of":["enabled_log","enabled_metric","metric"]}}}},"azurerm_monitor_metric_alert":{"block":{"attributes":{"auto_mitigate":{"type":"bool","optional":true,"default":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"frequency":{"type":"string","optional":true,"default":"PT1M"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["set","string"],"required":true},"severity":{"type":"number","optional":true,"default":3},"tags":{"type":["map","string"],"optional":true},"target_resource_location":{"type":"string","optional":true,"computed":true},"target_resource_type":{"type":"string","optional":true,"computed":true},"window_size":{"type":"string","optional":true,"default":"PT5M"}},"block_types":{"action":{"nesting_mode":4,"block":{"attributes":{"action_group_id":{"type":"string","required":true},"webhook_properties":{"type":["map","string"],"optional":true}}},"optional":true},"application_insights_web_test_location_availability_criteria":{"nesting_mode":3,"block":{"attributes":{"component_id":{"type":"string","required":true},"failed_location_count":{"type":"number","required":true},"web_test_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["criteria","dynamic_criteria","application_insights_web_test_location_availability_criteria"]},"criteria":{"nesting_mode":3,"block":{"attributes":{"aggregation":{"type":"string","required":true},"metric_name":{"type":"string","required":true},"metric_namespace":{"type":"string","required":true},"operator":{"type":"string","required":true},"skip_metric_validation":{"type":"bool","optional":true,"default":false},"threshold":{"type":"number","required":true}},"block_types":{"dimension":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true,"exactly_one_of":["criteria","dynamic_criteria","application_insights_web_test_location_availability_criteria"]},"dynamic_criteria":{"nesting_mode":3,"block":{"attributes":{"aggregation":{"type":"string","required":true},"alert_sensitivity":{"type":"string","required":true},"evaluation_failure_count":{"type":"number","optional":true,"default":4},"evaluation_total_count":{"type":"number","optional":true,"default":4},"ignore_data_before":{"type":"string","optional":true},"metric_name":{"type":"string","required":true},"metric_namespace":{"type":"string","required":true},"operator":{"type":"string","required":true},"skip_metric_validation":{"type":"bool","optional":true}},"block_types":{"dimension":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true,"exactly_one_of":["criteria","dynamic_criteria","application_insights_web_test_location_availability_criteria"]}}}},"azurerm_monitor_private_link_scope":{"block":{"attributes":{"ingestion_access_mode":{"type":"string","optional":true,"default":"Open"},"name":{"type":"string","required":true},"query_access_mode":{"type":"string","optional":true,"default":"Open"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_monitor_private_link_scoped_service":{"block":{"attributes":{"linked_resource_id":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scope_name":{"type":"string","required":true}}}},"azurerm_monitor_scheduled_query_rules_alert":{"block":{"attributes":{"authorized_resource_ids":{"type":["set","string"],"optional":true},"auto_mitigation_enabled":{"type":"bool","optional":true,"default":false,"conflicts_with":["throttling"]},"data_source_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"frequency":{"type":"number","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"query":{"type":"string","required":true},"query_type":{"type":"string","optional":true,"default":"ResultCount"},"resource_group_name":{"type":"string","required":true},"severity":{"type":"number","optional":true},"tags":{"type":["map","string"],"optional":true},"throttling":{"type":"number","optional":true,"conflicts_with":["auto_mitigation_enabled"]},"time_window":{"type":"number","required":true}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_group":{"type":["set","string"],"required":true},"custom_webhook_payload":{"type":"string","optional":true},"email_subject":{"type":"string","optional":true}}},"required":true},"trigger":{"nesting_mode":3,"block":{"attributes":{"operator":{"type":"string","required":true},"threshold":{"type":"number","required":true}},"block_types":{"metric_trigger":{"nesting_mode":3,"block":{"attributes":{"metric_column":{"type":"string","optional":true},"metric_trigger_type":{"type":"string","required":true},"operator":{"type":"string","required":true},"threshold":{"type":"number","required":true}}},"optional":true}}},"required":true}}}},"azurerm_monitor_scheduled_query_rules_alert_v2":{"block":{"attributes":{"auto_mitigation_enabled":{"type":"bool","optional":true,"default":false},"created_with_api_version":{"type":"string","computed":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"evaluation_frequency":{"type":"string","required":true},"is_a_legacy_log_analytics_rule":{"type":"bool","computed":true},"is_workspace_alerts_storage_configured":{"type":"bool","computed":true},"location":{"type":"string","required":true},"mute_actions_after_alert_duration":{"type":"string","optional":true},"name":{"type":"string","required":true},"query_time_range_override":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["list","string"],"required":true},"severity":{"type":"number","required":true},"skip_query_validation":{"type":"bool","optional":true},"tags":{"type":["map","string"],"optional":true},"target_resource_types":{"type":["list","string"],"optional":true},"window_duration":{"type":"string","required":true},"workspace_alerts_storage_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_groups":{"type":["list","string"],"optional":true},"custom_properties":{"type":["map","string"],"optional":true}}},"optional":true},"criteria":{"nesting_mode":3,"block":{"attributes":{"metric_measure_column":{"type":"string","optional":true},"operator":{"type":"string","required":true},"query":{"type":"string","required":true},"resource_id_column":{"type":"string","optional":true},"threshold":{"type":"number","required":true},"time_aggregation_method":{"type":"string","required":true}},"block_types":{"dimension":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","required":true},"values":{"type":["list","string"],"required":true}}},"optional":true},"failing_periods":{"nesting_mode":3,"block":{"attributes":{"minimum_failing_periods_to_trigger_alert":{"type":"number","required":true},"number_of_evaluation_periods":{"type":"number","required":true}}},"optional":true}}},"required":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_monitor_scheduled_query_rules_log":{"block":{"attributes":{"authorized_resource_ids":{"type":["set","string"],"optional":true},"data_source_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"criteria":{"nesting_mode":3,"block":{"attributes":{"metric_name":{"type":"string","required":true}},"block_types":{"dimension":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operator":{"type":"string","optional":true,"default":"Include"},"values":{"type":["list","string"],"required":true}}},"required":true}}},"required":true}}}},"azurerm_monitor_smart_detector_alert_rule":{"block":{"attributes":{"description":{"type":"string","optional":true},"detector_type":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"frequency":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scope_resource_ids":{"type":["set","string"],"required":true},"severity":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"throttling_duration":{"type":"string","optional":true}},"block_types":{"action_group":{"nesting_mode":3,"block":{"attributes":{"email_subject":{"type":"string","optional":true},"ids":{"type":["set","string"],"required":true},"webhook_payload":{"type":"string","optional":true}}},"required":true}}}},"azurerm_monitor_workspace":{"block":{"attributes":{"default_data_collection_endpoint_id":{"type":"string","computed":true},"default_data_collection_rule_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"query_endpoint":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_mssql_database":{"block":{"attributes":{"auto_pause_delay_in_minutes":{"type":"number","optional":true,"computed":true},"collation":{"type":"string","optional":true,"computed":true},"create_mode":{"type":"string","optional":true,"default":"Default","conflicts_with":["import"]},"creation_source_database_id":{"type":"string","optional":true,"computed":true},"elastic_pool_id":{"type":"string","optional":true},"enclave_type":{"type":"string","optional":true,"computed":true},"geo_backup_enabled":{"type":"bool","optional":true,"default":true},"ledger_enabled":{"type":"bool","optional":true,"computed":true},"license_type":{"type":"string","optional":true,"computed":true},"maintenance_configuration_name":{"type":"string","optional":true,"computed":true,"conflicts_with":["elastic_pool_id"]},"max_size_gb":{"type":"number","optional":true,"computed":true},"min_capacity":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"read_replica_count":{"type":"number","optional":true,"computed":true},"read_scale":{"type":"bool","optional":true,"computed":true},"recover_database_id":{"type":"string","optional":true},"recovery_point_id":{"type":"string","optional":true},"restore_dropped_database_id":{"type":"string","optional":true},"restore_long_term_retention_backup_id":{"type":"string","optional":true},"restore_point_in_time":{"type":"string","optional":true,"computed":true},"sample_name":{"type":"string","optional":true,"computed":true},"secondary_type":{"type":"string","optional":true,"computed":true},"server_id":{"type":"string","required":true},"sku_name":{"type":"string","optional":true,"computed":true},"storage_account_type":{"type":"string","optional":true,"default":"Geo"},"tags":{"type":["map","string"],"optional":true},"transparent_data_encryption_enabled":{"type":"bool","optional":true,"default":true},"transparent_data_encryption_key_automatic_rotation_enabled":{"type":"bool","optional":true,"default":false,"required_with":["transparent_data_encryption_key_vault_key_id"]},"transparent_data_encryption_key_vault_key_id":{"type":"string","optional":true},"zone_redundant":{"type":"bool","optional":true,"computed":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"import":{"nesting_mode":3,"block":{"attributes":{"administrator_login":{"type":"string","required":true},"administrator_login_password":{"type":"string","required":true},"authentication_type":{"type":"string","required":true},"storage_account_id":{"type":"string","optional":true},"storage_key":{"type":"string","required":true},"storage_key_type":{"type":"string","required":true},"storage_uri":{"type":"string","required":true}}},"optional":true,"conflicts_with":["create_mode"]},"long_term_retention_policy":{"nesting_mode":3,"block":{"attributes":{"immutable_backups_enabled":{"type":"bool","optional":true,"default":false},"monthly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"week_of_year":{"type":"number","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"weekly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"yearly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]}}},"optional":true,"computed":true},"short_term_retention_policy":{"nesting_mode":3,"block":{"attributes":{"backup_interval_in_hours":{"type":"number","optional":true,"computed":true},"retention_days":{"type":"number","required":true}}},"optional":true,"computed":true},"threat_detection_policy":{"nesting_mode":3,"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true},"email_account_admins":{"type":"string","optional":true,"default":"Disabled"},"email_addresses":{"type":["set","string"],"optional":true},"retention_days":{"type":"number","optional":true},"state":{"type":"string","optional":true,"default":"Disabled"},"storage_account_access_key":{"type":"string","optional":true},"storage_endpoint":{"type":"string","optional":true}}},"optional":true,"computed":true}}}},"azurerm_mssql_database_extended_auditing_policy":{"block":{"attributes":{"database_id":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_monitoring_enabled":{"type":"bool","optional":true,"default":true},"retention_in_days":{"type":"number","optional":true,"default":0},"storage_account_access_key":{"type":"string","optional":true},"storage_account_access_key_is_secondary":{"type":"bool","optional":true,"default":false},"storage_endpoint":{"type":"string","optional":true}}}},"azurerm_mssql_database_vulnerability_assessment_rule_baseline":{"block":{"attributes":{"baseline_name":{"type":"string","optional":true,"default":"default"},"database_name":{"type":"string","required":true},"rule_id":{"type":"string","required":true},"server_vulnerability_assessment_id":{"type":"string","required":true}},"block_types":{"baseline_result":{"nesting_mode":4,"block":{"attributes":{"result":{"type":["list","string"],"required":true}}},"required":true}}}},"azurerm_mssql_elasticpool":{"block":{"attributes":{"enclave_type":{"type":"string","optional":true,"computed":true},"license_type":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"maintenance_configuration_name":{"type":"string","optional":true,"default":"SQL_Default"},"max_size_bytes":{"type":"number","optional":true,"computed":true,"conflicts_with":["max_size_gb"]},"max_size_gb":{"type":"number","optional":true,"computed":true,"conflicts_with":["max_size_bytes"]},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone_redundant":{"type":"bool","optional":true}},"block_types":{"per_database_settings":{"nesting_mode":3,"block":{"attributes":{"max_capacity":{"type":"number","required":true},"min_capacity":{"type":"number","required":true}}},"required":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"family":{"type":"string","optional":true},"name":{"type":"string","required":true},"tier":{"type":"string","required":true}}},"required":true}}}},"azurerm_mssql_failover_group":{"block":{"attributes":{"databases":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"readonly_endpoint_failover_policy_enabled":{"type":"bool","optional":true,"computed":true},"server_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"partner_server":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","required":true},"location":{"type":"string","computed":true},"role":{"type":"string","computed":true}}},"required":true},"read_write_endpoint_failover_policy":{"nesting_mode":3,"block":{"attributes":{"grace_minutes":{"type":"number","optional":true},"mode":{"type":"string","required":true}}},"required":true}}}},"azurerm_mssql_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_mssql_job":{"block":{"attributes":{"description":{"type":"string","optional":true},"job_agent_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_mssql_job_agent":{"block":{"attributes":{"database_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"JA100"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_job_credential":{"block":{"attributes":{"job_agent_id":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","optional":true,"conflicts_with":["password_wo"],"exactly_one_of":["password","password_wo"]},"password_wo":{"type":"string","optional":true,"conflicts_with":["password"],"exactly_one_of":["password_wo","password"],"required_with":["password_wo_version"]},"password_wo_version":{"type":"number","optional":true,"required_with":["password_wo"]},"username":{"type":"string","required":true}}}},"azurerm_mssql_job_schedule":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"computed":true},"end_time":{"type":"string","optional":true,"computed":true},"interval":{"type":"string","optional":true},"job_id":{"type":"string","required":true},"start_time":{"type":"string","optional":true,"computed":true},"type":{"type":"string","required":true}}}},"azurerm_mssql_job_step":{"block":{"attributes":{"initial_retry_interval_seconds":{"type":"number","optional":true,"default":1},"job_credential_id":{"type":"string","optional":true},"job_id":{"type":"string","required":true},"job_step_index":{"type":"number","required":true},"job_target_group_id":{"type":"string","required":true},"maximum_retry_interval_seconds":{"type":"number","optional":true,"default":120},"name":{"type":"string","required":true},"retry_attempts":{"type":"number","optional":true,"default":10},"retry_interval_backoff_multiplier":{"type":"number","optional":true,"default":2},"sql_script":{"type":"string","required":true},"timeout_seconds":{"type":"number","optional":true,"default":43200}},"block_types":{"output_target":{"nesting_mode":3,"block":{"attributes":{"job_credential_id":{"type":"string","optional":true},"mssql_database_id":{"type":"string","required":true},"schema_name":{"type":"string","optional":true,"default":"dbo"},"table_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_job_target_group":{"block":{"attributes":{"job_agent_id":{"type":"string","required":true},"name":{"type":"string","required":true}},"block_types":{"job_target":{"nesting_mode":4,"block":{"attributes":{"database_name":{"type":"string","optional":true},"elastic_pool_name":{"type":"string","optional":true},"job_credential_id":{"type":"string","optional":true},"membership_type":{"type":"string","optional":true,"default":"Include"},"server_name":{"type":"string","required":true},"type":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_mssql_managed_database":{"block":{"attributes":{"managed_instance_id":{"type":"string","required":true},"name":{"type":"string","required":true},"short_term_retention_days":{"type":"number","optional":true,"default":7},"tags":{"type":["map","string"],"optional":true}},"block_types":{"long_term_retention_policy":{"nesting_mode":3,"block":{"attributes":{"immutable_backups_enabled":{"type":"bool","optional":true,"default":false},"monthly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"week_of_year":{"type":"number","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"weekly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]},"yearly_retention":{"type":"string","optional":true,"computed":true,"at_least_one_of":["long_term_retention_policy.0.weekly_retention","long_term_retention_policy.0.monthly_retention","long_term_retention_policy.0.yearly_retention","long_term_retention_policy.0.week_of_year"]}}},"optional":true,"computed":true},"point_in_time_restore":{"nesting_mode":3,"block":{"attributes":{"restore_point_in_time":{"type":"string","required":true},"source_database_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_managed_instance":{"block":{"attributes":{"administrator_login":{"type":"string","optional":true,"computed":true,"at_least_one_of":["administrator_login","azure_active_directory_administrator"],"required_with":["administrator_login","administrator_login_password"]},"administrator_login_password":{"type":"string","optional":true,"at_least_one_of":["administrator_login_password","azure_active_directory_administrator"],"required_with":["administrator_login","administrator_login_password"]},"collation":{"type":"string","optional":true,"default":"SQL_Latin1_General_CP1_CI_AS"},"database_format":{"type":"string","optional":true,"default":"SQLServer2022"},"dns_zone":{"type":"string","computed":true},"dns_zone_partner_id":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"hybrid_secondary_usage":{"type":"string","optional":true,"default":"Active"},"license_type":{"type":"string","required":true},"location":{"type":"string","required":true},"maintenance_configuration_name":{"type":"string","optional":true,"default":"SQL_Default"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"proxy_override":{"type":"string","optional":true,"default":"Default"},"public_data_endpoint_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"service_principal_type":{"type":"string","optional":true},"sku_name":{"type":"string","required":true},"storage_account_type":{"type":"string","optional":true,"default":"GRS"},"storage_size_in_gb":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"timezone_id":{"type":"string","optional":true,"default":"UTC"},"vcores":{"type":"number","required":true},"zone_redundant_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"azure_active_directory_administrator":{"nesting_mode":3,"block":{"attributes":{"azuread_authentication_only_enabled":{"type":"bool","optional":true,"default":false},"login_username":{"type":"string","required":true},"object_id":{"type":"string","required":true},"principal_type":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_managed_instance_active_directory_administrator":{"block":{"attributes":{"azuread_authentication_only":{"type":"bool","optional":true},"login_username":{"type":"string","required":true},"managed_instance_id":{"type":"string","required":true},"object_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_mssql_managed_instance_failover_group":{"block":{"attributes":{"location":{"type":"string","required":true},"managed_instance_id":{"type":"string","required":true},"name":{"type":"string","required":true},"partner_managed_instance_id":{"type":"string","required":true},"partner_region":{"type":["list",["object",{"location":"string","role":"string"}]],"computed":true},"readonly_endpoint_failover_policy_enabled":{"type":"bool","optional":true,"default":true},"role":{"type":"string","computed":true},"secondary_type":{"type":"string","optional":true,"default":"Geo"}},"block_types":{"read_write_endpoint_failover_policy":{"nesting_mode":3,"block":{"attributes":{"grace_minutes":{"type":"number","optional":true},"mode":{"type":"string","required":true}}},"required":true}}}},"azurerm_mssql_managed_instance_security_alert_policy":{"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true},"email_account_admins_enabled":{"type":"bool","optional":true,"default":false},"email_addresses":{"type":["set","string"],"optional":true},"enabled":{"type":"bool","optional":true},"managed_instance_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"retention_days":{"type":"number","optional":true,"default":0},"storage_account_access_key":{"type":"string","optional":true},"storage_endpoint":{"type":"string","optional":true}}}},"azurerm_mssql_managed_instance_start_stop_schedule":{"block":{"attributes":{"description":{"type":"string","optional":true},"managed_instance_id":{"type":"string","required":true},"next_execution_time":{"type":"string","computed":true},"next_run_action":{"type":"string","computed":true},"timezone_id":{"type":"string","optional":true,"default":"UTC"}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"start_day":{"type":"string","required":true},"start_time":{"type":"string","required":true},"stop_day":{"type":"string","required":true},"stop_time":{"type":"string","required":true}}},"required":true}}}},"azurerm_mssql_managed_instance_transparent_data_encryption":{"block":{"attributes":{"auto_rotation_enabled":{"type":"bool","optional":true,"default":false},"key_vault_key_id":{"type":"string","optional":true,"conflicts_with":["managed_hsm_key_id"]},"managed_hsm_key_id":{"type":"string","optional":true,"conflicts_with":["key_vault_key_id"]},"managed_instance_id":{"type":"string","required":true}}}},"azurerm_mssql_managed_instance_vulnerability_assessment":{"block":{"attributes":{"managed_instance_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_container_path":{"type":"string","required":true},"storage_container_sas_key":{"type":"string","optional":true}},"block_types":{"recurring_scans":{"nesting_mode":3,"block":{"attributes":{"email_subscription_admins":{"type":"bool","optional":true,"default":true},"emails":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_mssql_outbound_firewall_rule":{"block":{"attributes":{"name":{"type":"string","required":true},"server_id":{"type":"string","required":true}}}},"azurerm_mssql_server":{"block":{"attributes":{"administrator_login":{"type":"string","optional":true,"computed":true,"at_least_one_of":["administrator_login","azuread_administrator.0.azuread_authentication_only"]},"administrator_login_password":{"type":"string","optional":true,"conflicts_with":["administrator_login_password_wo"],"at_least_one_of":["administrator_login_password","administrator_login_password_wo","azuread_administrator.0.azuread_authentication_only"]},"administrator_login_password_wo":{"type":"string","optional":true,"conflicts_with":["administrator_login_password"],"at_least_one_of":["administrator_login_password_wo","administrator_login_password","azuread_administrator.0.azuread_authentication_only"],"required_with":["administrator_login_password_wo_version"]},"administrator_login_password_wo_version":{"type":"number","optional":true,"required_with":["administrator_login_password_wo"]},"connection_policy":{"type":"string","optional":true,"default":"Default"},"express_vulnerability_assessment_enabled":{"type":"bool","optional":true,"default":false},"fully_qualified_domain_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"outbound_network_restriction_enabled":{"type":"bool","optional":true,"default":false},"primary_user_assigned_identity_id":{"type":"string","optional":true,"computed":true,"required_with":["identity"]},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"restorable_dropped_database_ids":{"type":["list","string"],"computed":true},"tags":{"type":["map","string"],"optional":true},"transparent_data_encryption_key_vault_key_id":{"type":"string","optional":true},"version":{"type":"string","required":true}},"block_types":{"azuread_administrator":{"nesting_mode":3,"block":{"attributes":{"azuread_authentication_only":{"type":"bool","optional":true,"computed":true},"login_username":{"type":"string","required":true},"object_id":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_server_dns_alias":{"block":{"attributes":{"dns_record":{"type":"string","computed":true},"mssql_server_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_mssql_server_extended_auditing_policy":{"block":{"attributes":{"audit_actions_and_groups":{"type":["list","string"],"optional":true,"computed":true},"enabled":{"type":"bool","optional":true,"default":true},"log_monitoring_enabled":{"type":"bool","optional":true,"default":true},"predicate_expression":{"type":"string","optional":true},"retention_in_days":{"type":"number","optional":true,"default":0},"server_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_account_access_key_is_secondary":{"type":"bool","optional":true,"default":false},"storage_account_subscription_id":{"type":"string","optional":true},"storage_endpoint":{"type":"string","optional":true}}}},"azurerm_mssql_server_microsoft_support_auditing_policy":{"block":{"attributes":{"blob_storage_endpoint":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"log_monitoring_enabled":{"type":"bool","optional":true,"default":true},"server_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_account_subscription_id":{"type":"string","optional":true}}}},"azurerm_mssql_server_security_alert_policy":{"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true},"email_account_admins":{"type":"bool","optional":true,"default":false},"email_addresses":{"type":["set","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"retention_days":{"type":"number","optional":true,"default":0},"server_name":{"type":"string","required":true},"state":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true,"required_with":["storage_endpoint"]},"storage_endpoint":{"type":"string","optional":true,"required_with":["storage_account_access_key"]}}}},"azurerm_mssql_server_transparent_data_encryption":{"block":{"attributes":{"auto_rotation_enabled":{"type":"bool","optional":true,"default":false},"key_vault_key_id":{"type":"string","optional":true,"conflicts_with":["managed_hsm_key_id"]},"managed_hsm_key_id":{"type":"string","optional":true,"conflicts_with":["key_vault_key_id"]},"server_id":{"type":"string","required":true}}}},"azurerm_mssql_server_vulnerability_assessment":{"block":{"attributes":{"server_security_alert_policy_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_container_path":{"type":"string","required":true},"storage_container_sas_key":{"type":"string","optional":true}},"block_types":{"recurring_scans":{"nesting_mode":3,"block":{"attributes":{"email_subscription_admins":{"type":"bool","optional":true,"default":false},"emails":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_mssql_virtual_machine":{"block":{"attributes":{"r_services_enabled":{"type":"bool","optional":true},"sql_connectivity_port":{"type":"number","optional":true,"default":1433},"sql_connectivity_type":{"type":"string","optional":true,"default":"PRIVATE"},"sql_connectivity_update_password":{"type":"string","optional":true},"sql_connectivity_update_username":{"type":"string","optional":true},"sql_license_type":{"type":"string","optional":true},"sql_virtual_machine_group_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"assessment":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"run_immediately":{"type":"bool","optional":true,"default":false}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"string","required":true},"monthly_occurrence":{"type":"number","optional":true,"exactly_one_of":["assessment.0.schedule.0.weekly_interval"]},"start_time":{"type":"string","required":true},"weekly_interval":{"type":"number","optional":true,"exactly_one_of":["assessment.0.schedule.0.monthly_occurrence"]}}},"optional":true}}},"optional":true},"auto_backup":{"nesting_mode":3,"block":{"attributes":{"encryption_enabled":{"type":"bool","optional":true,"computed":true},"encryption_password":{"type":"string","optional":true},"retention_period_in_days":{"type":"number","required":true},"storage_account_access_key":{"type":"string","required":true},"storage_blob_endpoint":{"type":"string","required":true},"system_databases_backup_enabled":{"type":"bool","optional":true}},"block_types":{"manual_schedule":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["set","string"],"optional":true},"full_backup_frequency":{"type":"string","required":true},"full_backup_start_hour":{"type":"number","required":true},"full_backup_window_in_hours":{"type":"number","required":true},"log_backup_frequency_in_minutes":{"type":"number","required":true}}},"optional":true}}},"optional":true},"auto_patching":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"string","required":true},"maintenance_window_duration_in_minutes":{"type":"number","required":true},"maintenance_window_starting_hour":{"type":"number","required":true}}},"optional":true},"key_vault_credential":{"nesting_mode":3,"block":{"attributes":{"key_vault_url":{"type":"string","required":true},"name":{"type":"string","required":true},"service_principal_name":{"type":"string","required":true},"service_principal_secret":{"type":"string","required":true}}},"optional":true},"sql_instance":{"nesting_mode":3,"block":{"attributes":{"adhoc_workloads_optimization_enabled":{"type":"bool","optional":true,"default":false},"collation":{"type":"string","optional":true,"default":"SQL_Latin1_General_CP1_CI_AS"},"instant_file_initialization_enabled":{"type":"bool","optional":true,"default":false},"lock_pages_in_memory_enabled":{"type":"bool","optional":true,"default":false},"max_dop":{"type":"number","optional":true,"default":0},"max_server_memory_mb":{"type":"number","optional":true,"default":2147483647},"min_server_memory_mb":{"type":"number","optional":true,"default":0}}},"optional":true},"storage_configuration":{"nesting_mode":3,"block":{"attributes":{"disk_type":{"type":"string","required":true},"storage_workload_type":{"type":"string","required":true},"system_db_on_data_disk_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"data_settings":{"nesting_mode":3,"block":{"attributes":{"default_file_path":{"type":"string","required":true},"luns":{"type":["list","number"],"required":true}}},"optional":true},"log_settings":{"nesting_mode":3,"block":{"attributes":{"default_file_path":{"type":"string","required":true},"luns":{"type":["list","number"],"required":true}}},"optional":true},"temp_db_settings":{"nesting_mode":3,"block":{"attributes":{"data_file_count":{"type":"number","optional":true,"default":8},"data_file_growth_in_mb":{"type":"number","optional":true,"default":512},"data_file_size_mb":{"type":"number","optional":true,"default":256},"default_file_path":{"type":"string","required":true},"log_file_growth_mb":{"type":"number","optional":true,"default":512},"log_file_size_mb":{"type":"number","optional":true,"default":256},"luns":{"type":["list","number"],"required":true}}},"optional":true}}},"optional":true},"wsfc_domain_credential":{"nesting_mode":3,"block":{"attributes":{"cluster_bootstrap_account_password":{"type":"string","required":true},"cluster_operator_account_password":{"type":"string","required":true},"sql_service_account_password":{"type":"string","required":true}}},"optional":true}}}},"azurerm_mssql_virtual_machine_availability_group_listener":{"block":{"attributes":{"availability_group_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"port":{"type":"number","optional":true},"sql_virtual_machine_group_id":{"type":"string","required":true}},"block_types":{"load_balancer_configuration":{"nesting_mode":3,"block":{"attributes":{"load_balancer_id":{"type":"string","required":true},"private_ip_address":{"type":"string","required":true},"probe_port":{"type":"number","required":true},"sql_virtual_machine_ids":{"type":["set","string"],"required":true},"subnet_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["load_balancer_configuration","multi_subnet_ip_configuration"]},"multi_subnet_ip_configuration":{"nesting_mode":4,"block":{"attributes":{"private_ip_address":{"type":"string","required":true},"sql_virtual_machine_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["load_balancer_configuration","multi_subnet_ip_configuration"]},"replica":{"nesting_mode":4,"block":{"attributes":{"commit":{"type":"string","required":true},"failover_mode":{"type":"string","required":true},"readable_secondary":{"type":"string","required":true},"role":{"type":"string","required":true},"sql_virtual_machine_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_mssql_virtual_machine_group":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sql_image_offer":{"type":"string","required":true},"sql_image_sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"wsfc_domain_profile":{"nesting_mode":3,"block":{"attributes":{"cluster_bootstrap_account_name":{"type":"string","optional":true},"cluster_operator_account_name":{"type":"string","optional":true},"cluster_subnet_type":{"type":"string","required":true},"fqdn":{"type":"string","required":true},"organizational_unit_path":{"type":"string","optional":true},"sql_service_account_name":{"type":"string","optional":true},"storage_account_primary_key":{"type":"string","optional":true},"storage_account_url":{"type":"string","optional":true}}},"required":true}}}},"azurerm_mssql_virtual_network_rule":{"block":{"attributes":{"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_mysql_flexible_database":{"block":{"attributes":{"charset":{"type":"string","required":true},"collation":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true}}}},"azurerm_mysql_flexible_server":{"block":{"attributes":{"administrator_login":{"type":"string","optional":true,"computed":true},"administrator_password":{"type":"string","optional":true,"conflicts_with":["administrator_password_wo"]},"administrator_password_wo":{"type":"string","optional":true,"conflicts_with":["administrator_password"],"required_with":["administrator_password_wo_version"]},"administrator_password_wo_version":{"type":"number","optional":true,"required_with":["administrator_password_wo"]},"backup_retention_days":{"type":"number","optional":true,"default":7},"create_mode":{"type":"string","optional":true},"delegated_subnet_id":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"geo_redundant_backup_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"point_in_time_restore_time_in_utc":{"type":"string","optional":true},"private_dns_zone_id":{"type":"string","optional":true},"public_network_access":{"type":"string","optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","computed":true},"replica_capacity":{"type":"number","computed":true},"replication_role":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","optional":true,"computed":true},"source_server_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true,"computed":true},"zone":{"type":"string","optional":true,"computed":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"geo_backup_key_vault_key_id":{"type":"string","optional":true,"required_with":["identity","customer_managed_key.0.geo_backup_user_assigned_identity_id"]},"geo_backup_user_assigned_identity_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","optional":true,"conflicts_with":["customer_managed_key.0.managed_hsm_key_id"],"required_with":["identity","customer_managed_key.0.primary_user_assigned_identity_id"]},"managed_hsm_key_id":{"type":"string","optional":true,"conflicts_with":["customer_managed_key.0.key_vault_key_id"],"required_with":["identity","customer_managed_key.0.primary_user_assigned_identity_id"]},"primary_user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"high_availability":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"standby_availability_zone":{"type":"string","optional":true,"computed":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"maintenance_window":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"number","optional":true,"default":0},"start_hour":{"type":"number","optional":true,"default":0},"start_minute":{"type":"number","optional":true,"default":0}}},"optional":true},"storage":{"nesting_mode":3,"block":{"attributes":{"auto_grow_enabled":{"type":"bool","optional":true,"default":true},"io_scaling_enabled":{"type":"bool","optional":true,"default":false},"iops":{"type":"number","optional":true,"computed":true},"log_on_disk_enabled":{"type":"bool","optional":true,"default":false},"size_gb":{"type":"number","optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_mysql_flexible_server_active_directory_administrator":{"block":{"attributes":{"identity_id":{"type":"string","required":true},"login":{"type":"string","required":true},"object_id":{"type":"string","required":true},"server_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_mysql_flexible_server_configuration":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_mysql_flexible_server_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_nat_gateway":{"block":{"attributes":{"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_guid":{"type":"string","computed":true},"sku_name":{"type":"string","optional":true,"default":"Standard"},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_nat_gateway_public_ip_association":{"block":{"attributes":{"nat_gateway_id":{"type":"string","required":true},"public_ip_address_id":{"type":"string","required":true}}}},"azurerm_nat_gateway_public_ip_prefix_association":{"block":{"attributes":{"nat_gateway_id":{"type":"string","required":true},"public_ip_prefix_id":{"type":"string","required":true}}}},"azurerm_netapp_account":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"aes_encryption_enabled":{"type":"bool","optional":true,"default":false},"dns_servers":{"type":["list","string"],"required":true},"domain":{"type":"string","required":true},"kerberos_ad_name":{"type":"string","optional":true},"kerberos_kdc_ip":{"type":"string","optional":true},"ldap_over_tls_enabled":{"type":"bool","optional":true,"default":false,"required_with":["active_directory.0.server_root_ca_certificate"]},"ldap_signing_enabled":{"type":"bool","optional":true,"default":false},"local_nfs_users_with_ldap_allowed":{"type":"bool","optional":true,"default":false},"organizational_unit":{"type":"string","optional":true,"default":"CN=Computers"},"password":{"type":"string","required":true},"server_root_ca_certificate":{"type":"string","optional":true,"required_with":["active_directory.0.ldap_over_tls_enabled"]},"site_name":{"type":"string","optional":true,"default":"Default-First-Site-Name"},"smb_server_name":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_netapp_account_encryption":{"block":{"attributes":{"cross_tenant_key_vault_resource_id":{"type":"string","optional":true,"required_with":["federated_client_id"]},"encryption_key":{"type":"string","required":true},"federated_client_id":{"type":"string","optional":true,"required_with":["cross_tenant_key_vault_resource_id"]},"netapp_account_id":{"type":"string","required":true},"system_assigned_identity_principal_id":{"type":"string","optional":true,"conflicts_with":["user_assigned_identity_id"]},"user_assigned_identity_id":{"type":"string","optional":true,"conflicts_with":["system_assigned_identity_principal_id"]}}}},"azurerm_netapp_backup_policy":{"block":{"attributes":{"account_name":{"type":"string","required":true},"daily_backups_to_keep":{"type":"number","optional":true,"default":2},"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"monthly_backups_to_keep":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"weekly_backups_to_keep":{"type":"number","optional":true,"default":1}}}},"azurerm_netapp_backup_vault":{"block":{"attributes":{"account_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_netapp_pool":{"block":{"attributes":{"account_name":{"type":"string","required":true},"cool_access_enabled":{"type":"bool","optional":true,"default":false},"custom_throughput_mibps":{"type":"number","optional":true},"encryption_type":{"type":"string","optional":true,"default":"Single"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"qos_type":{"type":"string","optional":true,"default":"Auto"},"resource_group_name":{"type":"string","required":true},"service_level":{"type":"string","required":true},"size_in_tb":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_netapp_snapshot":{"block":{"attributes":{"account_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"pool_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"volume_name":{"type":"string","required":true}}}},"azurerm_netapp_snapshot_policy":{"block":{"attributes":{"account_name":{"type":"string","required":true},"enabled":{"type":"bool","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"daily_schedule":{"nesting_mode":3,"block":{"attributes":{"hour":{"type":"number","required":true},"minute":{"type":"number","required":true},"snapshots_to_keep":{"type":"number","required":true}}},"optional":true},"hourly_schedule":{"nesting_mode":3,"block":{"attributes":{"minute":{"type":"number","required":true},"snapshots_to_keep":{"type":"number","required":true}}},"optional":true},"monthly_schedule":{"nesting_mode":3,"block":{"attributes":{"days_of_month":{"type":["set","number"],"required":true},"hour":{"type":"number","required":true},"minute":{"type":"number","required":true},"snapshots_to_keep":{"type":"number","required":true}}},"optional":true},"weekly_schedule":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["set","string"],"required":true},"hour":{"type":"number","required":true},"minute":{"type":"number","required":true},"snapshots_to_keep":{"type":"number","required":true}}},"optional":true}}}},"azurerm_netapp_volume":{"block":{"attributes":{"accept_grow_capacity_pool_for_short_term_clone_split":{"type":"string","optional":true},"account_name":{"type":"string","required":true},"azure_vmware_data_store_enabled":{"type":"bool","optional":true,"default":false},"create_from_snapshot_resource_id":{"type":"string","optional":true},"encryption_key_source":{"type":"string","optional":true,"computed":true},"kerberos_enabled":{"type":"bool","optional":true},"key_vault_private_endpoint_id":{"type":"string","optional":true,"computed":true,"required_with":["encryption_key_source"]},"large_volume_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"mount_ip_addresses":{"type":["list","string"],"computed":true},"name":{"type":"string","required":true},"network_features":{"type":"string","optional":true,"computed":true},"pool_name":{"type":"string","required":true},"protocols":{"type":["set","string"],"optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"security_style":{"type":"string","optional":true,"computed":true},"service_level":{"type":"string","required":true},"smb3_protocol_encryption_enabled":{"type":"bool","optional":true},"smb_access_based_enumeration_enabled":{"type":"bool","optional":true,"default":false},"smb_continuous_availability_enabled":{"type":"bool","optional":true},"smb_non_browsable_enabled":{"type":"bool","optional":true,"default":false},"snapshot_directory_visible":{"type":"bool","optional":true,"default":true},"storage_quota_in_gb":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"throughput_in_mibps":{"type":"number","optional":true,"computed":true},"volume_path":{"type":"string","required":true},"zone":{"type":"string","optional":true}},"block_types":{"cool_access":{"nesting_mode":3,"block":{"attributes":{"coolness_period_in_days":{"type":"number","required":true},"retrieval_policy":{"type":"string","required":true},"tiering_policy":{"type":"string","required":true}}},"optional":true},"data_protection_backup_policy":{"nesting_mode":3,"block":{"attributes":{"backup_policy_id":{"type":"string","required":true},"backup_vault_id":{"type":"string","required":true},"policy_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true},"data_protection_replication":{"nesting_mode":3,"block":{"attributes":{"endpoint_type":{"type":"string","optional":true,"default":"dst"},"remote_volume_location":{"type":"string","required":true},"remote_volume_resource_id":{"type":"string","required":true},"replication_frequency":{"type":"string","required":true}}},"optional":true},"data_protection_snapshot_policy":{"nesting_mode":3,"block":{"attributes":{"snapshot_policy_id":{"type":"string","required":true}}},"optional":true},"export_policy_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_clients":{"type":["set","string"],"required":true},"kerberos_5_read_only_enabled":{"type":"bool","optional":true},"kerberos_5_read_write_enabled":{"type":"bool","optional":true},"kerberos_5i_read_only_enabled":{"type":"bool","optional":true},"kerberos_5i_read_write_enabled":{"type":"bool","optional":true},"kerberos_5p_read_only_enabled":{"type":"bool","optional":true},"kerberos_5p_read_write_enabled":{"type":"bool","optional":true},"protocol":{"type":["list","string"],"optional":true,"computed":true},"protocols_enabled":{"type":["list","string"],"optional":true,"computed":true},"root_access_enabled":{"type":"bool","optional":true},"rule_index":{"type":"number","required":true},"unix_read_only":{"type":"bool","optional":true},"unix_read_write":{"type":"bool","optional":true}}},"optional":true}}}},"azurerm_netapp_volume_group_oracle":{"block":{"attributes":{"account_name":{"type":"string","required":true},"application_identifier":{"type":"string","required":true},"group_description":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"volume":{"nesting_mode":3,"block":{"attributes":{"capacity_pool_id":{"type":"string","required":true},"encryption_key_source":{"type":"string","optional":true,"computed":true},"id":{"type":"string","computed":true},"key_vault_private_endpoint_id":{"type":"string","optional":true,"computed":true},"mount_ip_addresses":{"type":["list","string"],"computed":true},"name":{"type":"string","required":true},"network_features":{"type":"string","optional":true,"computed":true},"protocols":{"type":["list","string"],"required":true},"proximity_placement_group_id":{"type":"string","optional":true},"security_style":{"type":"string","required":true},"service_level":{"type":"string","required":true},"snapshot_directory_visible":{"type":"bool","required":true},"storage_quota_in_gb":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"throughput_in_mibps":{"type":"number","required":true},"volume_path":{"type":"string","required":true},"volume_spec_name":{"type":"string","required":true},"zone":{"type":"string","optional":true}},"block_types":{"data_protection_replication":{"nesting_mode":3,"block":{"attributes":{"endpoint_type":{"type":"string","optional":true,"default":"dst"},"remote_volume_location":{"type":"string","required":true},"remote_volume_resource_id":{"type":"string","required":true},"replication_frequency":{"type":"string","required":true}}},"optional":true},"data_protection_snapshot_policy":{"nesting_mode":3,"block":{"attributes":{"snapshot_policy_id":{"type":"string","required":true}}},"optional":true,"computed":true},"export_policy_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_clients":{"type":"string","required":true},"nfsv3_enabled":{"type":"bool","required":true},"nfsv41_enabled":{"type":"bool","required":true},"root_access_enabled":{"type":"bool","optional":true,"default":true},"rule_index":{"type":"number","required":true},"unix_read_only":{"type":"bool","optional":true,"default":false},"unix_read_write":{"type":"bool","optional":true,"default":true}}},"required":true}}},"required":true}}}},"azurerm_netapp_volume_group_sap_hana":{"block":{"attributes":{"account_name":{"type":"string","required":true},"application_identifier":{"type":"string","required":true},"group_description":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"volume":{"nesting_mode":3,"block":{"attributes":{"capacity_pool_id":{"type":"string","required":true},"id":{"type":"string","computed":true},"mount_ip_addresses":{"type":["list","string"],"computed":true},"name":{"type":"string","required":true},"protocols":{"type":["list","string"],"required":true},"proximity_placement_group_id":{"type":"string","optional":true},"security_style":{"type":"string","required":true},"service_level":{"type":"string","required":true},"snapshot_directory_visible":{"type":"bool","required":true},"storage_quota_in_gb":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"throughput_in_mibps":{"type":"number","required":true},"volume_path":{"type":"string","required":true},"volume_spec_name":{"type":"string","required":true}},"block_types":{"data_protection_replication":{"nesting_mode":3,"block":{"attributes":{"endpoint_type":{"type":"string","optional":true,"default":"dst"},"remote_volume_location":{"type":"string","required":true},"remote_volume_resource_id":{"type":"string","required":true},"replication_frequency":{"type":"string","required":true}}},"optional":true},"data_protection_snapshot_policy":{"nesting_mode":3,"block":{"attributes":{"snapshot_policy_id":{"type":"string","required":true}}},"optional":true,"computed":true},"export_policy_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_clients":{"type":"string","required":true},"nfsv3_enabled":{"type":"bool","required":true},"nfsv41_enabled":{"type":"bool","required":true},"root_access_enabled":{"type":"bool","optional":true,"default":true},"rule_index":{"type":"number","required":true},"unix_read_only":{"type":"bool","optional":true,"default":false},"unix_read_write":{"type":"bool","optional":true,"default":true}}},"required":true}}},"required":true}}}},"azurerm_netapp_volume_quota_rule":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"quota_size_in_kib":{"type":"number","required":true},"quota_target":{"type":"string","optional":true},"quota_type":{"type":"string","required":true},"volume_id":{"type":"string","required":true}}}},"azurerm_network_connection_monitor":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_watcher_id":{"type":"string","required":true},"notes":{"type":"string","optional":true},"output_workspace_resource_ids":{"type":["set","string"],"optional":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"endpoint":{"nesting_mode":4,"block":{"attributes":{"address":{"type":"string","optional":true},"coverage_level":{"type":"string","optional":true},"excluded_ip_addresses":{"type":["set","string"],"optional":true},"included_ip_addresses":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"target_resource_id":{"type":"string","optional":true},"target_resource_type":{"type":"string","optional":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","optional":true,"default":"Include"}},"block_types":{"item":{"nesting_mode":4,"block":{"attributes":{"address":{"type":"string","optional":true},"type":{"type":"string","optional":true,"default":"AgentAddress"}}},"optional":true}}},"optional":true}}},"required":true},"test_configuration":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"preferred_ip_version":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"test_frequency_in_seconds":{"type":"number","optional":true,"default":60}},"block_types":{"http_configuration":{"nesting_mode":3,"block":{"attributes":{"method":{"type":"string","optional":true,"default":"Get"},"path":{"type":"string","optional":true},"port":{"type":"number","optional":true},"prefer_https":{"type":"bool","optional":true,"default":false},"valid_status_code_ranges":{"type":["set","string"],"optional":true}},"block_types":{"request_header":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"icmp_configuration":{"nesting_mode":3,"block":{"attributes":{"trace_route_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true},"success_threshold":{"nesting_mode":3,"block":{"attributes":{"checks_failed_percent":{"type":"number","optional":true},"round_trip_time_ms":{"type":"number","optional":true}}},"optional":true},"tcp_configuration":{"nesting_mode":3,"block":{"attributes":{"destination_port_behavior":{"type":"string","optional":true},"port":{"type":"number","required":true},"trace_route_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}},"required":true},"test_group":{"nesting_mode":4,"block":{"attributes":{"destination_endpoints":{"type":["set","string"],"required":true},"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"source_endpoints":{"type":["set","string"],"required":true},"test_configuration_names":{"type":["set","string"],"required":true}}},"required":true}}}},"azurerm_network_ddos_protection_plan":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_ids":{"type":["list","string"],"computed":true}}}},"azurerm_network_function_azure_traffic_collector":{"block":{"attributes":{"collector_policy_ids":{"type":["list","string"],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_hub_id":{"type":["list","string"],"computed":true}}}},"azurerm_network_function_collector_policy":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"traffic_collector_id":{"type":"string","required":true}},"block_types":{"ipfx_emission":{"nesting_mode":3,"block":{"attributes":{"destination_types":{"type":["list","string"],"required":true}}},"required":true},"ipfx_ingestion":{"nesting_mode":3,"block":{"attributes":{"source_resource_ids":{"type":["set","string"],"required":true}}},"required":true}}}},"azurerm_network_interface":{"block":{"attributes":{"accelerated_networking_enabled":{"type":"bool","optional":true,"default":false},"applied_dns_servers":{"type":["list","string"],"computed":true},"auxiliary_mode":{"type":"string","optional":true,"required_with":["auxiliary_sku"]},"auxiliary_sku":{"type":"string","optional":true,"required_with":["auxiliary_mode"]},"dns_servers":{"type":["list","string"],"optional":true},"edge_zone":{"type":"string","optional":true},"internal_dns_name_label":{"type":"string","optional":true},"internal_domain_name_suffix":{"type":"string","computed":true},"ip_forwarding_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"mac_address":{"type":"string","computed":true},"name":{"type":"string","required":true},"private_ip_address":{"type":"string","computed":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_machine_id":{"type":"string","computed":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"gateway_load_balancer_frontend_ip_configuration_id":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true,"computed":true},"private_ip_address":{"type":"string","optional":true,"computed":true},"private_ip_address_allocation":{"type":"string","required":true},"private_ip_address_version":{"type":"string","optional":true,"default":"IPv4"},"public_ip_address_id":{"type":"string","optional":true},"subnet_id":{"type":"string","optional":true}}},"required":true}}}},"azurerm_network_interface_application_gateway_backend_address_pool_association":{"block":{"attributes":{"backend_address_pool_id":{"type":"string","required":true},"ip_configuration_name":{"type":"string","required":true},"network_interface_id":{"type":"string","required":true}}}},"azurerm_network_interface_application_security_group_association":{"block":{"attributes":{"application_security_group_id":{"type":"string","required":true},"network_interface_id":{"type":"string","required":true}}}},"azurerm_network_interface_backend_address_pool_association":{"block":{"attributes":{"backend_address_pool_id":{"type":"string","required":true},"ip_configuration_name":{"type":"string","required":true},"network_interface_id":{"type":"string","required":true}}}},"azurerm_network_interface_nat_rule_association":{"block":{"attributes":{"ip_configuration_name":{"type":"string","required":true},"nat_rule_id":{"type":"string","required":true},"network_interface_id":{"type":"string","required":true}}}},"azurerm_network_interface_security_group_association":{"block":{"attributes":{"network_interface_id":{"type":"string","required":true},"network_security_group_id":{"type":"string","required":true}}}},"azurerm_network_manager":{"block":{"attributes":{"cross_tenant_scopes":{"type":["list",["object",{"management_groups":["list","string"],"subscriptions":["list","string"],"tenant_id":"string"}]],"computed":true},"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scope_accesses":{"type":["list","string"],"optional":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"scope":{"nesting_mode":3,"block":{"attributes":{"management_group_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["scope.0.management_group_ids","scope.0.subscription_ids"]},"subscription_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["scope.0.management_group_ids","scope.0.subscription_ids"]}}},"required":true}}}},"azurerm_network_manager_admin_rule":{"block":{"attributes":{"action":{"type":"string","required":true},"admin_rule_collection_id":{"type":"string","required":true},"description":{"type":"string","optional":true},"destination_port_ranges":{"type":["list","string"],"optional":true},"direction":{"type":"string","required":true},"name":{"type":"string","required":true},"priority":{"type":"number","required":true},"protocol":{"type":"string","required":true},"source_port_ranges":{"type":["list","string"],"optional":true}},"block_types":{"destination":{"nesting_mode":3,"block":{"attributes":{"address_prefix":{"type":"string","required":true},"address_prefix_type":{"type":"string","required":true}}},"optional":true},"source":{"nesting_mode":3,"block":{"attributes":{"address_prefix":{"type":"string","required":true},"address_prefix_type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_network_manager_admin_rule_collection":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_group_ids":{"type":["list","string"],"required":true},"security_admin_configuration_id":{"type":"string","required":true}}}},"azurerm_network_manager_connectivity_configuration":{"block":{"attributes":{"connectivity_topology":{"type":"string","required":true},"delete_existing_peering_enabled":{"type":"bool","optional":true},"description":{"type":"string","optional":true},"global_mesh_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true}},"block_types":{"applies_to_group":{"nesting_mode":3,"block":{"attributes":{"global_mesh_enabled":{"type":"bool","optional":true},"group_connectivity":{"type":"string","required":true},"network_group_id":{"type":"string","required":true},"use_hub_gateway":{"type":"bool","optional":true}}},"required":true},"hub":{"nesting_mode":3,"block":{"attributes":{"resource_id":{"type":"string","required":true},"resource_type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_network_manager_deployment":{"block":{"attributes":{"configuration_ids":{"type":["list","string"],"required":true},"location":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true},"scope_access":{"type":"string","required":true},"triggers":{"type":["map","string"],"optional":true}}}},"azurerm_network_manager_ipam_pool":{"block":{"attributes":{"address_prefixes":{"type":["list","string"],"required":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true},"parent_pool_name":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_network_manager_ipam_pool_static_cidr":{"block":{"attributes":{"address_prefixes":{"type":["list","string"],"optional":true,"exactly_one_of":["address_prefixes","number_of_ip_addresses_to_allocate"]},"ipam_pool_id":{"type":"string","required":true},"name":{"type":"string","required":true},"number_of_ip_addresses_to_allocate":{"type":"string","optional":true,"exactly_one_of":["address_prefixes","number_of_ip_addresses_to_allocate"]}}}},"azurerm_network_manager_management_group_connection":{"block":{"attributes":{"connection_state":{"type":"string","computed":true},"description":{"type":"string","optional":true},"management_group_id":{"type":"string","required":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true}}}},"azurerm_network_manager_network_group":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true}}}},"azurerm_network_manager_routing_configuration":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true}}}},"azurerm_network_manager_routing_rule":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"rule_collection_id":{"type":"string","required":true}},"block_types":{"destination":{"nesting_mode":3,"block":{"attributes":{"address":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true},"next_hop":{"nesting_mode":3,"block":{"attributes":{"address":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_network_manager_routing_rule_collection":{"block":{"attributes":{"bgp_route_propagation_enabled":{"type":"bool","optional":true,"default":false},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_group_ids":{"type":["list","string"],"required":true},"routing_configuration_id":{"type":"string","required":true}}}},"azurerm_network_manager_scope_connection":{"block":{"attributes":{"connection_state":{"type":"string","computed":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true},"target_scope_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_network_manager_security_admin_configuration":{"block":{"attributes":{"apply_on_network_intent_policy_based_services":{"type":["list","string"],"optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true}}}},"azurerm_network_manager_static_member":{"block":{"attributes":{"name":{"type":"string","required":true},"network_group_id":{"type":"string","required":true},"region":{"type":"string","computed":true},"target_virtual_network_id":{"type":"string","required":true}}}},"azurerm_network_manager_subscription_connection":{"block":{"attributes":{"connection_state":{"type":"string","computed":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}}}},"azurerm_network_manager_verifier_workspace":{"block":{"attributes":{"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_manager_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_network_manager_verifier_workspace_reachability_analysis_intent":{"block":{"attributes":{"description":{"type":"string","optional":true},"destination_resource_id":{"type":"string","required":true},"name":{"type":"string","required":true},"source_resource_id":{"type":"string","required":true},"verifier_workspace_id":{"type":"string","required":true}},"block_types":{"ip_traffic":{"nesting_mode":3,"block":{"attributes":{"destination_ips":{"type":["list","string"],"required":true},"destination_ports":{"type":["list","string"],"required":true},"protocols":{"type":["list","string"],"required":true},"source_ips":{"type":["list","string"],"required":true},"source_ports":{"type":["list","string"],"required":true}}},"required":true}}}},"azurerm_network_packet_capture":{"block":{"attributes":{"maximum_bytes_per_packet":{"type":"number","optional":true,"default":0},"maximum_bytes_per_session":{"type":"number","optional":true,"default":1073741824},"maximum_capture_duration":{"type":"number","optional":true,"default":18000},"name":{"type":"string","required":true},"network_watcher_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"local_ip_address":{"type":"string","optional":true},"local_port":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"remote_ip_address":{"type":"string","optional":true},"remote_port":{"type":"string","optional":true}}},"optional":true},"storage_location":{"nesting_mode":3,"block":{"attributes":{"file_path":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_account_id":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_path":{"type":"string","computed":true}}},"required":true}}}},"azurerm_network_profile":{"block":{"attributes":{"container_network_interface_ids":{"type":["list","string"],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"container_network_interface":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_network_security_group":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"security_rule":{"type":["set",["object",{"access":"string","description":"string","destination_address_prefix":"string","destination_address_prefixes":["set","string"],"destination_application_security_group_ids":["set","string"],"destination_port_range":"string","destination_port_ranges":["set","string"],"direction":"string","name":"string","priority":"number","protocol":"string","source_address_prefix":"string","source_address_prefixes":["set","string"],"source_application_security_group_ids":["set","string"],"source_port_range":"string","source_port_ranges":["set","string"]}]],"optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_network_security_rule":{"block":{"attributes":{"access":{"type":"string","required":true},"description":{"type":"string","optional":true},"destination_address_prefix":{"type":"string","optional":true,"exactly_one_of":["destination_address_prefix","destination_address_prefixes","destination_application_security_group_ids"]},"destination_address_prefixes":{"type":["set","string"],"optional":true,"exactly_one_of":["destination_address_prefix","destination_address_prefixes","destination_application_security_group_ids"]},"destination_application_security_group_ids":{"type":["set","string"],"optional":true,"exactly_one_of":["destination_address_prefix","destination_address_prefixes","destination_application_security_group_ids"]},"destination_port_range":{"type":"string","optional":true,"conflicts_with":["destination_port_ranges"]},"destination_port_ranges":{"type":["set","string"],"optional":true,"conflicts_with":["destination_port_range"]},"direction":{"type":"string","required":true},"name":{"type":"string","required":true},"network_security_group_name":{"type":"string","required":true},"priority":{"type":"number","required":true},"protocol":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_address_prefix":{"type":"string","optional":true,"exactly_one_of":["source_address_prefix","source_address_prefixes","source_application_security_group_ids"]},"source_address_prefixes":{"type":["set","string"],"optional":true,"exactly_one_of":["source_address_prefix","source_address_prefixes","source_application_security_group_ids"]},"source_application_security_group_ids":{"type":["set","string"],"optional":true,"exactly_one_of":["source_address_prefix","source_address_prefixes","source_application_security_group_ids"]},"source_port_range":{"type":"string","optional":true,"conflicts_with":["source_port_ranges"]},"source_port_ranges":{"type":["set","string"],"optional":true,"conflicts_with":["source_port_range"]}}}},"azurerm_network_watcher":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_network_watcher_flow_log":{"block":{"attributes":{"enabled":{"type":"bool","required":true},"location":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"network_security_group_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["network_security_group_id","target_resource_id"]},"network_watcher_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"target_resource_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["network_security_group_id","target_resource_id"]},"version":{"type":"number","optional":true,"default":1}},"block_types":{"retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","required":true},"enabled":{"type":"bool","required":true}}},"required":true},"traffic_analytics":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"interval_in_minutes":{"type":"number","optional":true,"default":60},"workspace_id":{"type":"string","required":true},"workspace_region":{"type":"string","required":true},"workspace_resource_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_new_relic_monitor":{"block":{"attributes":{"account_creation_source":{"type":"string","optional":true,"default":"LIFTR"},"account_id":{"type":"string","optional":true,"computed":true},"ingestion_key":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"org_creation_source":{"type":"string","optional":true,"default":"LIFTR"},"organization_id":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"user_id":{"type":"string","optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"plan":{"nesting_mode":3,"block":{"attributes":{"billing_cycle":{"type":"string","optional":true,"default":"MONTHLY"},"effective_date":{"type":"string","required":true},"plan_id":{"type":"string","optional":true,"default":"newrelic-pay-as-you-go-free-live"},"usage_type":{"type":"string","optional":true,"default":"PAYG"}}},"required":true},"user":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","required":true},"first_name":{"type":"string","required":true},"last_name":{"type":"string","required":true},"phone_number":{"type":"string","required":true}}},"required":true}}}},"azurerm_new_relic_tag_rule":{"block":{"attributes":{"activity_log_enabled":{"type":"bool","optional":true,"default":false},"azure_active_directory_log_enabled":{"type":"bool","optional":true,"default":false},"metric_enabled":{"type":"bool","optional":true,"default":false},"monitor_id":{"type":"string","required":true},"subscription_log_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"log_tag_filter":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"metric_tag_filter":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}}},"azurerm_nginx_api_key":{"block":{"attributes":{"end_date_time":{"type":"string","required":true},"hint":{"type":"string","computed":true},"name":{"type":"string","required":true},"nginx_deployment_id":{"type":"string","required":true},"secret_text":{"type":"string","required":true}}}},"azurerm_nginx_certificate":{"block":{"attributes":{"certificate_virtual_path":{"type":"string","required":true},"key_vault_secret_id":{"type":"string","required":true},"key_virtual_path":{"type":"string","required":true},"name":{"type":"string","required":true},"nginx_deployment_id":{"type":"string","required":true}}}},"azurerm_nginx_configuration":{"block":{"attributes":{"nginx_deployment_id":{"type":"string","required":true},"package_data":{"type":"string","optional":true,"conflicts_with":["protected_file","config_file"],"at_least_one_of":["config_file","package_data"]},"root_file":{"type":"string","required":true}},"block_types":{"config_file":{"nesting_mode":4,"block":{"attributes":{"content":{"type":"string","required":true},"virtual_path":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["config_file","package_data"]},"protected_file":{"nesting_mode":4,"block":{"attributes":{"content":{"type":"string","required":true},"content_hash":{"type":"string","computed":true},"virtual_path":{"type":"string","required":true}}},"optional":true,"required_with":["config_file"]}}}},"azurerm_nginx_deployment":{"block":{"attributes":{"automatic_upgrade_channel":{"type":"string","optional":true,"default":"stable"},"capacity":{"type":"number","optional":true,"conflicts_with":["auto_scale_profile"]},"dataplane_api_endpoint":{"type":"string","computed":true},"diagnose_support_enabled":{"type":"bool","optional":true},"email":{"type":"string","optional":true},"ip_address":{"type":"string","computed":true},"location":{"type":"string","required":true},"managed_resource_group":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"nginx_version":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"auto_scale_profile":{"nesting_mode":3,"block":{"attributes":{"max_capacity":{"type":"number","required":true},"min_capacity":{"type":"number","required":true},"name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["capacity"]},"frontend_private":{"nesting_mode":3,"block":{"attributes":{"allocation_method":{"type":"string","required":true},"ip_address":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["frontend_public"]},"frontend_public":{"nesting_mode":3,"block":{"attributes":{"ip_address":{"type":["list","string"],"optional":true}}},"optional":true,"conflicts_with":["frontend_private"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logging_storage_account":{"nesting_mode":3,"block":{"attributes":{"container_name":{"type":"string","optional":true},"name":{"type":"string","optional":true}}},"optional":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"subnet_id":{"type":"string","required":true}}},"optional":true},"web_application_firewall":{"nesting_mode":3,"block":{"attributes":{"activation_state_enabled":{"type":"bool","required":true},"status":{"type":["list",["object",{"attack_signatures_package":["list",["object",{"revision_datetime":"string","version":"string"}]],"bot_signatures_package":["list",["object",{"revision_datetime":"string","version":"string"}]],"component_versions":["list",["object",{"waf_engine_version":"string","waf_nginx_version":"string"}]],"threat_campaigns_package":["list",["object",{"revision_datetime":"string","version":"string"}]]}]],"computed":true}}},"optional":true}}}},"azurerm_notification_hub":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"apns_credential":{"nesting_mode":3,"block":{"attributes":{"application_mode":{"type":"string","required":true},"bundle_id":{"type":"string","required":true},"key_id":{"type":"string","required":true},"team_id":{"type":"string","required":true},"token":{"type":"string","required":true}}},"optional":true},"browser_credential":{"nesting_mode":3,"block":{"attributes":{"subject":{"type":"string","required":true},"vapid_private_key":{"type":"string","required":true},"vapid_public_key":{"type":"string","required":true}}},"optional":true},"gcm_credential":{"nesting_mode":3,"block":{"attributes":{"api_key":{"type":"string","required":true}}},"optional":true}}}},"azurerm_notification_hub_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"notification_hub_name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_notification_hub_namespace":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"namespace_type":{"type":"string","required":true},"replication_region":{"type":"string","optional":true,"default":"Default"},"resource_group_name":{"type":"string","required":true},"servicebus_endpoint":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone_redundancy_enabled":{"type":"bool","optional":true,"default":false}}}},"azurerm_oracle_autonomous_database":{"block":{"attributes":{"admin_password":{"type":"string","required":true},"allowed_ips":{"type":["set","string"],"optional":true},"auto_scaling_enabled":{"type":"bool","required":true},"auto_scaling_for_storage_enabled":{"type":"bool","required":true},"backup_retention_period_in_days":{"type":"number","required":true},"character_set":{"type":"string","required":true},"compute_count":{"type":"number","required":true},"compute_model":{"type":"string","required":true},"customer_contacts":{"type":["list","string"],"optional":true,"computed":true},"data_storage_size_in_tbs":{"type":"number","required":true},"db_version":{"type":"string","required":true},"db_workload":{"type":"string","required":true},"display_name":{"type":"string","required":true},"license_model":{"type":"string","required":true},"location":{"type":"string","required":true},"mtls_connection_required":{"type":"bool","required":true},"name":{"type":"string","required":true},"national_character_set":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"subnet_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_id":{"type":"string","optional":true}},"block_types":{"long_term_backup_schedule":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"repeat_cadence":{"type":"string","required":true},"retention_period_in_days":{"type":"number","required":true},"time_of_backup":{"type":"string","required":true}}},"optional":true}}}},"azurerm_oracle_autonomous_database_backup":{"block":{"attributes":{"autonomous_database_id":{"type":"string","required":true},"name":{"type":"string","required":true},"retention_period_in_days":{"type":"number","required":true},"type":{"type":"string","optional":true,"default":"LongTerm"}}}},"azurerm_oracle_autonomous_database_clone_from_backup":{"block":{"attributes":{"admin_password":{"type":"string","required":true},"allowed_ip_addresses":{"type":["set","string"],"optional":true,"exactly_one_of":["allowed_ip_addresses","virtual_network_id"]},"auto_scaling_enabled":{"type":"bool","required":true},"auto_scaling_for_storage_enabled":{"type":"bool","required":true},"backup_retention_period_in_days":{"type":"number","required":true},"backup_timestamp":{"type":"string","optional":true},"character_set":{"type":"string","required":true},"clone_type":{"type":"string","required":true},"compute_count":{"type":"number","required":true},"compute_model":{"type":"string","required":true},"customer_contacts":{"type":["list","string"],"optional":true},"data_storage_size_in_tb":{"type":"number","required":true},"database_version":{"type":"string","required":true},"database_workload":{"type":"string","required":true},"display_name":{"type":"string","required":true},"license_model":{"type":"string","required":true},"location":{"type":"string","required":true},"mtls_connection_required":{"type":"bool","required":true},"name":{"type":"string","required":true},"national_character_set":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_autonomous_database_id":{"type":"string","required":true},"subnet_id":{"type":"string","optional":true,"required_with":["virtual_network_id"]},"tags":{"type":["map","string"],"optional":true},"virtual_network_id":{"type":"string","optional":true,"exactly_one_of":["allowed_ip_addresses","virtual_network_id"],"required_with":["subnet_id"]}}}},"azurerm_oracle_autonomous_database_clone_from_database":{"block":{"attributes":{"admin_password":{"type":"string","required":true},"allowed_ip_addresses":{"type":["set","string"],"optional":true,"exactly_one_of":["allowed_ip_addresses","virtual_network_id"]},"auto_scaling_enabled":{"type":"bool","required":true},"auto_scaling_for_storage_enabled":{"type":"bool","required":true},"backup_retention_period_in_days":{"type":"number","required":true},"character_set":{"type":"string","required":true},"clone_type":{"type":"string","required":true},"compute_count":{"type":"number","required":true},"compute_model":{"type":"string","required":true},"customer_contacts":{"type":["list","string"],"optional":true},"data_storage_size_in_tb":{"type":"number","required":true},"database_version":{"type":"string","required":true},"database_workload":{"type":"string","required":true},"display_name":{"type":"string","required":true},"license_model":{"type":"string","required":true},"location":{"type":"string","required":true},"mtls_connection_required":{"type":"bool","required":true},"name":{"type":"string","required":true},"national_character_set":{"type":"string","required":true},"refreshable_model":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"source_autonomous_database_id":{"type":"string","required":true},"subnet_id":{"type":"string","optional":true,"required_with":["virtual_network_id"]},"tags":{"type":["map","string"],"optional":true},"virtual_network_id":{"type":"string","optional":true,"exactly_one_of":["allowed_ip_addresses","virtual_network_id"],"required_with":["subnet_id"]}}}},"azurerm_oracle_cloud_vm_cluster":{"block":{"attributes":{"backup_subnet_cidr":{"type":"string","optional":true},"cloud_exadata_infrastructure_id":{"type":"string","required":true},"cluster_name":{"type":"string","optional":true,"computed":true},"cpu_core_count":{"type":"number","required":true},"data_storage_percentage":{"type":"number","optional":true,"computed":true},"data_storage_size_in_tbs":{"type":"number","optional":true,"computed":true},"db_node_storage_size_in_gbs":{"type":"number","optional":true,"computed":true},"db_servers":{"type":["list","string"],"required":true},"display_name":{"type":"string","required":true},"domain":{"type":"string","optional":true,"computed":true},"gi_version":{"type":"string","required":true},"hostname":{"type":"string","required":true},"hostname_actual":{"type":"string","computed":true},"license_model":{"type":"string","required":true},"local_backup_enabled":{"type":"bool","optional":true,"computed":true},"location":{"type":"string","required":true},"memory_size_in_gbs":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"ocid":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"scan_listener_port_tcp":{"type":"number","optional":true,"default":1521},"scan_listener_port_tcp_ssl":{"type":"number","optional":true,"default":2484},"sparse_diskgroup_enabled":{"type":"bool","optional":true,"computed":true},"ssh_public_keys":{"type":["list","string"],"required":true},"subnet_id":{"type":"string","required":true},"system_version":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"time_zone":{"type":"string","optional":true,"computed":true},"virtual_network_id":{"type":"string","required":true},"zone_id":{"type":"string","optional":true,"computed":true}},"block_types":{"data_collection_options":{"nesting_mode":3,"block":{"attributes":{"diagnostics_events_enabled":{"type":"bool","optional":true,"computed":true},"health_monitoring_enabled":{"type":"bool","optional":true,"computed":true},"incident_logs_enabled":{"type":"bool","optional":true,"computed":true}}},"optional":true,"computed":true},"file_system_configuration":{"nesting_mode":3,"block":{"attributes":{"mount_point":{"type":"string","optional":true},"size_in_gb":{"type":"number","optional":true}}},"optional":true}}}},"azurerm_oracle_exadata_infrastructure":{"block":{"attributes":{"compute_count":{"type":"number","required":true},"customer_contacts":{"type":["list","string"],"optional":true,"computed":true},"database_server_type":{"type":"string","optional":true,"computed":true},"display_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"shape":{"type":"string","required":true},"storage_count":{"type":"number","required":true},"storage_server_type":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"required":true}},"block_types":{"maintenance_window":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["list","string"],"optional":true,"computed":true},"hours_of_day":{"type":["list","number"],"optional":true,"computed":true},"lead_time_in_weeks":{"type":"number","optional":true,"computed":true},"months":{"type":["list","string"],"optional":true,"computed":true},"patching_mode":{"type":"string","optional":true,"computed":true},"preference":{"type":"string","optional":true,"computed":true},"weeks_of_month":{"type":["list","number"],"optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_oracle_exascale_database_storage_vault":{"block":{"attributes":{"additional_flash_cache_percentage":{"type":"number","required":true},"description":{"type":"string","optional":true,"computed":true},"display_name":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"time_zone":{"type":"string","optional":true,"default":"UTC"},"zones":{"type":["set","string"],"required":true}},"block_types":{"high_capacity_database_storage":{"nesting_mode":3,"block":{"attributes":{"available_size_in_gb":{"type":"number","computed":true},"total_size_in_gb":{"type":"number","required":true}}},"required":true}}}},"azurerm_oracle_resource_anchor":{"block":{"attributes":{"linked_compartment_id":{"type":"string","computed":true},"location":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_orbital_contact":{"block":{"attributes":{"contact_profile_id":{"type":"string","required":true},"ground_station_name":{"type":"string","required":true},"name":{"type":"string","required":true},"reservation_end_time":{"type":"string","required":true},"reservation_start_time":{"type":"string","required":true},"spacecraft_id":{"type":"string","required":true}}}},"azurerm_orbital_contact_profile":{"block":{"attributes":{"auto_tracking":{"type":"string","required":true},"event_hub_uri":{"type":"string","optional":true},"location":{"type":"string","required":true},"minimum_elevation_degrees":{"type":"number","optional":true},"minimum_variable_contact_duration":{"type":"string","required":true},"name":{"type":"string","required":true},"network_configuration_subnet_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"links":{"nesting_mode":3,"block":{"attributes":{"direction":{"type":"string","required":true},"name":{"type":"string","required":true},"polarization":{"type":"string","required":true}},"block_types":{"channels":{"nesting_mode":3,"block":{"attributes":{"bandwidth_mhz":{"type":"number","required":true},"center_frequency_mhz":{"type":"number","required":true},"demodulation_configuration":{"type":"string","optional":true},"modulation_configuration":{"type":"string","optional":true},"name":{"type":"string","required":true}},"block_types":{"end_point":{"nesting_mode":4,"block":{"attributes":{"end_point_name":{"type":"string","required":true},"ip_address":{"type":"string","optional":true},"port":{"type":"string","required":true},"protocol":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true}}}},"azurerm_orbital_spacecraft":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"norad_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"title_line":{"type":"string","required":true},"two_line_elements":{"type":["list","string"],"required":true}},"block_types":{"links":{"nesting_mode":3,"block":{"attributes":{"bandwidth_mhz":{"type":"number","required":true},"center_frequency_mhz":{"type":"number","required":true},"direction":{"type":"string","required":true},"name":{"type":"string","required":true},"polarization":{"type":"string","required":true}}},"required":true}}}},"azurerm_orchestrated_virtual_machine_scale_set":{"block":{"attributes":{"capacity_reservation_group_id":{"type":"string","optional":true,"conflicts_with":["proximity_placement_group_id"]},"encryption_at_host_enabled":{"type":"bool","optional":true},"eviction_policy":{"type":"string","optional":true},"extension_operations_enabled":{"type":"bool","optional":true,"default":true},"extensions_time_budget":{"type":"string","optional":true,"default":"PT1H30M"},"instances":{"type":"number","optional":true,"computed":true},"license_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"max_bid_price":{"type":"number","optional":true,"default":-1},"name":{"type":"string","required":true},"network_api_version":{"type":"string","optional":true,"default":"2020-11-01"},"platform_fault_domain_count":{"type":"number","required":true},"priority":{"type":"string","optional":true,"default":"Regular"},"proximity_placement_group_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id"]},"resource_group_name":{"type":"string","required":true},"single_placement_group":{"type":"bool","optional":true,"computed":true},"sku_name":{"type":"string","optional":true},"source_image_id":{"type":"string","optional":true,"conflicts_with":["source_image_reference"]},"tags":{"type":["map","string"],"optional":true},"unique_id":{"type":"string","computed":true},"upgrade_mode":{"type":"string","optional":true,"default":"Manual"},"user_data_base64":{"type":"string","optional":true},"zone_balance":{"type":"bool","optional":true,"default":false},"zones":{"type":["set","string"],"optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"automatic_instance_repair":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"grace_period":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"storage_account_uri":{"type":"string","optional":true}}},"optional":true},"data_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"create_option":{"type":"string","optional":true,"default":"Empty"},"disk_encryption_set_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"lun":{"type":"number","optional":true,"computed":true},"storage_account_type":{"type":"string","required":true},"ultra_ssd_disk_iops_read_write":{"type":"number","optional":true,"computed":true},"ultra_ssd_disk_mbps_read_write":{"type":"number","optional":true,"computed":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"extension":{"nesting_mode":4,"block":{"attributes":{"auto_upgrade_minor_version_enabled":{"type":"bool","optional":true,"default":true},"extensions_to_provision_after_vm_creation":{"type":["list","string"],"optional":true},"failure_suppression_enabled":{"type":"bool","optional":true,"default":false},"force_extension_execution_on_change":{"type":"string","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true}},"block_types":{"protected_settings_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"auxiliary_mode":{"type":"string","optional":true},"auxiliary_sku":{"type":"string","optional":true},"dns_servers":{"type":["list","string"],"optional":true},"enable_accelerated_networking":{"type":"bool","optional":true,"default":false},"enable_ip_forwarding":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"network_security_group_id":{"type":"string","optional":true},"primary":{"type":"bool","optional":true,"default":false}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"application_gateway_backend_address_pool_ids":{"type":["set","string"],"optional":true},"application_security_group_ids":{"type":["set","string"],"optional":true},"load_balancer_backend_address_pool_ids":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"public_ip_address":{"nesting_mode":3,"block":{"attributes":{"domain_name_label":{"type":"string","optional":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"public_ip_prefix_id":{"type":"string","optional":true},"sku_name":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"ip_tag":{"nesting_mode":3,"block":{"attributes":{"tag":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"required":true}}},"optional":true},"os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"disk_encryption_set_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"storage_account_type":{"type":"string","required":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"diff_disk_settings":{"nesting_mode":3,"block":{"attributes":{"option":{"type":"string","required":true},"placement":{"type":"string","optional":true,"default":"CacheDisk"}}},"optional":true}}},"optional":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"custom_data":{"type":"string","optional":true}},"block_types":{"linux_configuration":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","optional":true},"admin_username":{"type":"string","required":true},"computer_name_prefix":{"type":"string","optional":true,"computed":true},"disable_password_authentication":{"type":"bool","optional":true,"default":true},"patch_assessment_mode":{"type":"string","optional":true,"default":"ImageDefault"},"patch_mode":{"type":"string","optional":true,"default":"ImageDefault"},"provision_vm_agent":{"type":"bool","optional":true,"default":true}},"block_types":{"admin_ssh_key":{"nesting_mode":4,"block":{"attributes":{"public_key":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"url":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true},"windows_configuration":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","required":true},"admin_username":{"type":"string","required":true},"computer_name_prefix":{"type":"string","optional":true,"computed":true},"enable_automatic_updates":{"type":"bool","optional":true,"default":true},"hotpatching_enabled":{"type":"bool","optional":true,"default":false},"patch_assessment_mode":{"type":"string","optional":true,"default":"ImageDefault"},"patch_mode":{"type":"string","optional":true,"default":"AutomaticByOS"},"provision_vm_agent":{"type":"bool","optional":true,"default":true},"timezone":{"type":"string","optional":true}},"block_types":{"additional_unattend_content":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"setting":{"type":"string","required":true}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"store":{"type":"string","required":true},"url":{"type":"string","required":true}}},"required":true}}},"optional":true},"winrm_listener":{"nesting_mode":4,"block":{"attributes":{"certificate_url":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"priority_mix":{"nesting_mode":3,"block":{"attributes":{"base_regular_count":{"type":"number","optional":true,"default":0},"regular_percentage_above_base":{"type":"number","optional":true,"default":0}}},"optional":true},"rolling_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"cross_zone_upgrades_enabled":{"type":"bool","optional":true},"max_batch_instance_percent":{"type":"number","required":true},"max_unhealthy_instance_percent":{"type":"number","required":true},"max_unhealthy_upgraded_instance_percent":{"type":"number","required":true},"maximum_surge_instances_enabled":{"type":"bool","optional":true},"pause_time_between_batches":{"type":"string","required":true},"prioritize_unhealthy_instances_enabled":{"type":"bool","optional":true}}},"optional":true},"sku_profile":{"nesting_mode":3,"block":{"attributes":{"allocation_strategy":{"type":"string","required":true},"vm_sizes":{"type":["set","string"],"required":true}}},"optional":true},"source_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true,"conflicts_with":["source_image_id"]},"termination_notification":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"timeout":{"type":"string","optional":true,"default":"PT5M"}}},"optional":true,"computed":true}}}},"azurerm_palo_alto_local_rulestack":{"block":{"attributes":{"anti_spyware_profile":{"type":"string","optional":true},"anti_virus_profile":{"type":"string","optional":true},"description":{"type":"string","optional":true},"dns_subscription":{"type":"string","optional":true},"file_blocking_profile":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"url_filtering_profile":{"type":"string","optional":true},"vulnerability_profile":{"type":"string","optional":true}}}},"azurerm_palo_alto_local_rulestack_certificate":{"block":{"attributes":{"audit_comment":{"type":"string","optional":true},"description":{"type":"string","optional":true},"key_vault_certificate_id":{"type":"string","optional":true,"exactly_one_of":["self_signed","key_vault_certificate_id"]},"name":{"type":"string","required":true},"rulestack_id":{"type":"string","required":true},"self_signed":{"type":"bool","optional":true,"default":false,"exactly_one_of":["key_vault_certificate_id","self_signed"]}}}},"azurerm_palo_alto_local_rulestack_fqdn_list":{"block":{"attributes":{"audit_comment":{"type":"string","optional":true},"description":{"type":"string","optional":true},"fully_qualified_domain_names":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"rulestack_id":{"type":"string","required":true}}}},"azurerm_palo_alto_local_rulestack_outbound_trust_certificate_association":{"block":{"attributes":{"certificate_id":{"type":"string","required":true}}}},"azurerm_palo_alto_local_rulestack_outbound_untrust_certificate_association":{"block":{"attributes":{"certificate_id":{"type":"string","required":true}}}},"azurerm_palo_alto_local_rulestack_prefix_list":{"block":{"attributes":{"audit_comment":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"prefix_list":{"type":["list","string"],"required":true},"rulestack_id":{"type":"string","required":true}}}},"azurerm_palo_alto_local_rulestack_rule":{"block":{"attributes":{"action":{"type":"string","required":true},"applications":{"type":["list","string"],"required":true},"audit_comment":{"type":"string","optional":true},"decryption_rule_type":{"type":"string","optional":true,"default":"None"},"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"inspection_certificate_id":{"type":"string","optional":true},"logging_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"negate_destination":{"type":"bool","optional":true,"default":false},"negate_source":{"type":"bool","optional":true,"default":false},"priority":{"type":"number","required":true},"protocol":{"type":"string","optional":true,"exactly_one_of":["protocol","protocol_ports"]},"protocol_ports":{"type":["list","string"],"optional":true,"exactly_one_of":["protocol","protocol_ports"]},"rulestack_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"category":{"nesting_mode":3,"block":{"attributes":{"custom_urls":{"type":["list","string"],"required":true},"feeds":{"type":["list","string"],"optional":true}}},"optional":true},"destination":{"nesting_mode":3,"block":{"attributes":{"cidrs":{"type":["list","string"],"optional":true,"at_least_one_of":["destination.0.cidrs","destination.0.countries","destination.0.feeds","destination.0.local_rulestack_fqdn_list_ids","destination.0.local_rulestack_prefix_list_ids"]},"countries":{"type":["list","string"],"optional":true,"at_least_one_of":["destination.0.cidrs","destination.0.countries","destination.0.feeds","destination.0.local_rulestack_fqdn_list_ids","destination.0.local_rulestack_prefix_list_ids"]},"feeds":{"type":["list","string"],"optional":true,"at_least_one_of":["destination.0.cidrs","destination.0.countries","destination.0.feeds","destination.0.local_rulestack_fqdn_list_ids","destination.0.local_rulestack_prefix_list_ids"]},"local_rulestack_fqdn_list_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["destination.0.cidrs","destination.0.countries","destination.0.feeds","destination.0.local_rulestack_fqdn_list_ids","destination.0.local_rulestack_prefix_list_ids"]},"local_rulestack_prefix_list_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["destination.0.cidrs","destination.0.countries","destination.0.feeds","destination.0.local_rulestack_fqdn_list_ids","destination.0.local_rulestack_prefix_list_ids"]}}},"required":true},"source":{"nesting_mode":3,"block":{"attributes":{"cidrs":{"type":["list","string"],"optional":true,"at_least_one_of":["source.0.cidrs","source.0.countries","source.0.feeds","source.0.local_rulestack_prefix_list_ids"]},"countries":{"type":["list","string"],"optional":true,"at_least_one_of":["source.0.cidrs","source.0.countries","source.0.feeds","source.0.local_rulestack_prefix_list_ids"]},"feeds":{"type":["list","string"],"optional":true,"at_least_one_of":["source.0.cidrs","source.0.countries","source.0.feeds","source.0.local_rulestack_prefix_list_ids"]},"local_rulestack_prefix_list_ids":{"type":["list","string"],"optional":true,"at_least_one_of":["source.0.cidrs","source.0.countries","source.0.feeds","source.0.local_rulestack_prefix_list_ids"]}}},"required":true}}}},"azurerm_palo_alto_next_generation_firewall_virtual_hub_local_rulestack":{"block":{"attributes":{"marketplace_offer_id":{"type":"string","optional":true,"default":"pan_swfw_cloud_ngfw"},"name":{"type":"string","required":true},"plan_id":{"type":"string","optional":true,"default":"panw-cloud-ngfw-payg"},"resource_group_name":{"type":"string","required":true},"rulestack_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"destination_nat":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"protocol":{"type":"string","required":true}},"block_types":{"backend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address":{"type":"string","required":true}}},"optional":true},"frontend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"dns_settings":{"nesting_mode":3,"block":{"attributes":{"azure_dns_servers":{"type":["list","string"],"computed":true},"dns_servers":{"type":["list","string"],"optional":true,"conflicts_with":["dns_settings.0.use_azure_dns"]},"use_azure_dns":{"type":"bool","optional":true,"default":false,"conflicts_with":["dns_settings.0.dns_servers"]}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"egress_nat_ip_address_ids":{"type":["list","string"],"optional":true},"egress_nat_ip_addresses":{"type":["list","string"],"computed":true},"ip_of_trust_for_user_defined_routes":{"type":"string","computed":true},"network_virtual_appliance_id":{"type":"string","required":true},"public_ip_address_ids":{"type":["list","string"],"required":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"trusted_address_ranges":{"type":["list","string"],"optional":true},"trusted_subnet_id":{"type":"string","computed":true},"untrusted_subnet_id":{"type":"string","computed":true},"virtual_hub_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_palo_alto_next_generation_firewall_virtual_hub_panorama":{"block":{"attributes":{"location":{"type":"string","required":true},"marketplace_offer_id":{"type":"string","optional":true,"default":"pan_swfw_cloud_ngfw"},"name":{"type":"string","required":true},"panorama":{"type":["list",["object",{"device_group_name":"string","host_name":"string","name":"string","panorama_server_1":"string","panorama_server_2":"string","template_name":"string","virtual_machine_ssh_key":"string"}]],"computed":true},"panorama_base64_config":{"type":"string","required":true},"plan_id":{"type":"string","optional":true,"default":"panw-cloud-ngfw-payg"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"destination_nat":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"protocol":{"type":"string","required":true}},"block_types":{"backend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address":{"type":"string","required":true}}},"optional":true},"frontend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"dns_settings":{"nesting_mode":3,"block":{"attributes":{"azure_dns_servers":{"type":["list","string"],"computed":true},"dns_servers":{"type":["list","string"],"optional":true,"conflicts_with":["dns_settings.0.use_azure_dns"]},"use_azure_dns":{"type":"bool","optional":true,"default":false,"conflicts_with":["dns_settings.0.dns_servers"]}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"egress_nat_ip_address_ids":{"type":["list","string"],"optional":true},"egress_nat_ip_addresses":{"type":["list","string"],"computed":true},"ip_of_trust_for_user_defined_routes":{"type":"string","computed":true},"network_virtual_appliance_id":{"type":"string","required":true},"public_ip_address_ids":{"type":["list","string"],"required":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"trusted_address_ranges":{"type":["list","string"],"optional":true},"trusted_subnet_id":{"type":"string","computed":true},"untrusted_subnet_id":{"type":"string","computed":true},"virtual_hub_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_palo_alto_next_generation_firewall_virtual_network_local_rulestack":{"block":{"attributes":{"marketplace_offer_id":{"type":"string","optional":true,"default":"pan_swfw_cloud_ngfw"},"name":{"type":"string","required":true},"plan_id":{"type":"string","optional":true,"default":"panw-cloud-ngfw-payg"},"resource_group_name":{"type":"string","required":true},"rulestack_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"destination_nat":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"protocol":{"type":"string","required":true}},"block_types":{"backend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address":{"type":"string","required":true}}},"optional":true},"frontend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"dns_settings":{"nesting_mode":3,"block":{"attributes":{"azure_dns_servers":{"type":["list","string"],"computed":true},"dns_servers":{"type":["list","string"],"optional":true,"conflicts_with":["dns_settings.0.use_azure_dns"]},"use_azure_dns":{"type":"bool","optional":true,"default":false,"conflicts_with":["dns_settings.0.dns_servers"]}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"egress_nat_ip_address_ids":{"type":["list","string"],"optional":true},"egress_nat_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_address_ids":{"type":["list","string"],"required":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"trusted_address_ranges":{"type":["list","string"],"optional":true}},"block_types":{"vnet_configuration":{"nesting_mode":3,"block":{"attributes":{"ip_of_trust_for_user_defined_routes":{"type":"string","computed":true},"trusted_subnet_id":{"type":"string","optional":true},"untrusted_subnet_id":{"type":"string","optional":true},"virtual_network_id":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_palo_alto_next_generation_firewall_virtual_network_panorama":{"block":{"attributes":{"location":{"type":"string","required":true},"marketplace_offer_id":{"type":"string","optional":true,"default":"pan_swfw_cloud_ngfw"},"name":{"type":"string","required":true},"panorama":{"type":["list",["object",{"device_group_name":"string","host_name":"string","name":"string","panorama_server_1":"string","panorama_server_2":"string","template_name":"string","virtual_machine_ssh_key":"string"}]],"computed":true},"panorama_base64_config":{"type":"string","required":true},"plan_id":{"type":"string","optional":true,"default":"panw-cloud-ngfw-payg"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"destination_nat":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"protocol":{"type":"string","required":true}},"block_types":{"backend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address":{"type":"string","required":true}}},"optional":true},"frontend_config":{"nesting_mode":3,"block":{"attributes":{"port":{"type":"number","required":true},"public_ip_address_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"dns_settings":{"nesting_mode":3,"block":{"attributes":{"azure_dns_servers":{"type":["list","string"],"computed":true},"dns_servers":{"type":["list","string"],"optional":true,"conflicts_with":["dns_settings.0.use_azure_dns"]},"use_azure_dns":{"type":"bool","optional":true,"default":false,"conflicts_with":["dns_settings.0.dns_servers"]}}},"optional":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"egress_nat_ip_address_ids":{"type":["list","string"],"optional":true},"egress_nat_ip_addresses":{"type":["list","string"],"computed":true},"public_ip_address_ids":{"type":["list","string"],"required":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"trusted_address_ranges":{"type":["list","string"],"optional":true}},"block_types":{"vnet_configuration":{"nesting_mode":3,"block":{"attributes":{"ip_of_trust_for_user_defined_routes":{"type":"string","computed":true},"trusted_subnet_id":{"type":"string","optional":true},"untrusted_subnet_id":{"type":"string","optional":true},"virtual_network_id":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_palo_alto_virtual_network_appliance":{"block":{"attributes":{"name":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}}}},"azurerm_pim_active_role_assignment":{"block":{"attributes":{"justification":{"type":"string","optional":true,"computed":true},"principal_id":{"type":"string","required":true},"principal_type":{"type":"string","computed":true},"role_definition_id":{"type":"string","required":true},"scope":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"start_date_time":{"type":"string","optional":true,"computed":true}},"block_types":{"expiration":{"nesting_mode":3,"block":{"attributes":{"duration_days":{"type":"number","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_hours","schedule.0.expiration.0.end_date_time"]},"duration_hours":{"type":"number","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_days","schedule.0.expiration.0.end_date_time"]},"end_date_time":{"type":"string","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_days","schedule.0.expiration.0.duration_hours"]}}},"optional":true}}},"optional":true,"computed":true},"ticket":{"nesting_mode":3,"block":{"attributes":{"number":{"type":"string","optional":true},"system":{"type":"string","optional":true}}},"optional":true,"computed":true}}}},"azurerm_pim_eligible_role_assignment":{"block":{"attributes":{"condition":{"type":"string","optional":true,"required_with":["condition_version"]},"condition_version":{"type":"string","optional":true,"required_with":["condition"]},"justification":{"type":"string","optional":true,"computed":true},"principal_id":{"type":"string","required":true},"principal_type":{"type":"string","computed":true},"role_definition_id":{"type":"string","required":true},"scope":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"start_date_time":{"type":"string","optional":true,"computed":true}},"block_types":{"expiration":{"nesting_mode":3,"block":{"attributes":{"duration_days":{"type":"number","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_hours","schedule.0.expiration.0.end_date_time"]},"duration_hours":{"type":"number","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_days","schedule.0.expiration.0.end_date_time"]},"end_date_time":{"type":"string","optional":true,"computed":true,"conflicts_with":["schedule.0.expiration.0.duration_days","schedule.0.expiration.0.duration_hours"]}}},"optional":true}}},"optional":true,"computed":true},"ticket":{"nesting_mode":3,"block":{"attributes":{"number":{"type":"string","optional":true},"system":{"type":"string","optional":true}}},"optional":true,"computed":true}}}},"azurerm_point_to_site_vpn_gateway":{"block":{"attributes":{"dns_servers":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"routing_preference_internet_enabled":{"type":"bool","optional":true,"default":false},"scale_unit":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_hub_id":{"type":"string","required":true},"vpn_server_configuration_id":{"type":"string","required":true}},"block_types":{"connection_configuration":{"nesting_mode":3,"block":{"attributes":{"internet_security_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true}},"block_types":{"route":{"nesting_mode":3,"block":{"attributes":{"associated_route_table_id":{"type":"string","required":true},"inbound_route_map_id":{"type":"string","optional":true},"outbound_route_map_id":{"type":"string","optional":true}},"block_types":{"propagated_route_table":{"nesting_mode":3,"block":{"attributes":{"ids":{"type":["list","string"],"required":true},"labels":{"type":["set","string"],"optional":true}}},"optional":true}}},"optional":true,"computed":true},"vpn_client_address_pool":{"nesting_mode":3,"block":{"attributes":{"address_prefixes":{"type":["set","string"],"required":true}}},"required":true}}},"required":true}}}},"azurerm_policy_definition":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"management_group_id":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"mode":{"type":"string","required":true},"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"policy_rule":{"type":"string","optional":true},"policy_type":{"type":"string","required":true},"role_definition_ids":{"type":["list","string"],"computed":true}}}},"azurerm_policy_set_definition":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"management_group_id":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"parameters":{"type":"string","optional":true},"policy_type":{"type":"string","required":true}},"block_types":{"policy_definition_group":{"nesting_mode":4,"block":{"attributes":{"additional_metadata_resource_id":{"type":"string","optional":true},"category":{"type":"string","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"name":{"type":"string","required":true}}},"optional":true},"policy_definition_reference":{"nesting_mode":3,"block":{"attributes":{"parameter_values":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true},"policy_group_names":{"type":["set","string"],"optional":true},"reference_id":{"type":"string","optional":true,"computed":true},"version":{"type":"string","optional":true,"computed":true}}},"required":true}}}},"azurerm_policy_virtual_machine_configuration_assignment":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"configuration":{"nesting_mode":3,"block":{"attributes":{"assignment_type":{"type":"string","optional":true},"content_hash":{"type":"string","optional":true,"computed":true},"content_uri":{"type":"string","optional":true,"computed":true},"version":{"type":"string","optional":true}},"block_types":{"parameter":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_portal_dashboard":{"block":{"attributes":{"dashboard_properties":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_portal_tenant_configuration":{"block":{"attributes":{"private_markdown_storage_enforced":{"type":"bool","required":true}}}},"azurerm_postgresql_active_directory_administrator":{"block":{"attributes":{"login":{"type":"string","required":true},"object_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_postgresql_configuration":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_postgresql_database":{"block":{"attributes":{"charset":{"type":"string","required":true},"collation":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true}}}},"azurerm_postgresql_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server":{"block":{"attributes":{"administrator_login":{"type":"string","optional":true,"computed":true},"administrator_password":{"type":"string","optional":true,"conflicts_with":["administrator_password_wo"]},"administrator_password_wo":{"type":"string","optional":true,"conflicts_with":["administrator_password"],"required_with":["administrator_password_wo_version"]},"administrator_password_wo_version":{"type":"number","optional":true,"required_with":["administrator_password_wo"]},"auto_grow_enabled":{"type":"bool","optional":true,"default":false},"backup_retention_days":{"type":"number","optional":true,"computed":true},"create_mode":{"type":"string","optional":true},"delegated_subnet_id":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"geo_redundant_backup_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"point_in_time_restore_time_in_utc":{"type":"string","optional":true},"private_dns_zone_id":{"type":"string","optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"replication_role":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","optional":true,"computed":true},"source_server_id":{"type":"string","optional":true},"storage_mb":{"type":"number","optional":true,"computed":true},"storage_tier":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","optional":true,"computed":true},"zone":{"type":"string","optional":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"active_directory_auth_enabled":{"type":"bool","optional":true,"default":false},"password_auth_enabled":{"type":"bool","optional":true,"default":true},"tenant_id":{"type":"string","optional":true,"required_with":["authentication.0.active_directory_auth_enabled"]}}},"optional":true,"computed":true},"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"geo_backup_key_vault_key_id":{"type":"string","optional":true,"required_with":["identity","customer_managed_key.0.geo_backup_user_assigned_identity_id"]},"geo_backup_user_assigned_identity_id":{"type":"string","optional":true},"key_vault_key_id":{"type":"string","required":true,"required_with":["identity","customer_managed_key.0.primary_user_assigned_identity_id"]},"primary_user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"high_availability":{"nesting_mode":3,"block":{"attributes":{"mode":{"type":"string","required":true},"standby_availability_zone":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"maintenance_window":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"number","optional":true,"default":0},"start_hour":{"type":"number","optional":true,"default":0},"start_minute":{"type":"number","optional":true,"default":0}}},"optional":true}}}},"azurerm_postgresql_flexible_server_active_directory_administrator":{"block":{"attributes":{"object_id":{"type":"string","required":true},"principal_name":{"type":"string","required":true},"principal_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server_backup":{"block":{"attributes":{"completed_time":{"type":"string","computed":true},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server_configuration":{"block":{"attributes":{"name":{"type":"string","required":true},"server_id":{"type":"string","required":true},"value":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server_database":{"block":{"attributes":{"charset":{"type":"string","optional":true,"default":"UTF8"},"collation":{"type":"string","optional":true,"default":"en_US.utf8"},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"server_id":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true}}}},"azurerm_postgresql_flexible_server_virtual_endpoint":{"block":{"attributes":{"name":{"type":"string","required":true},"replica_server_id":{"type":"string","required":true},"source_server_id":{"type":"string","required":true},"type":{"type":"string","required":true}}}},"azurerm_postgresql_server":{"block":{"attributes":{"administrator_login":{"type":"string","optional":true,"computed":true},"administrator_login_password":{"type":"string","optional":true,"conflicts_with":["administrator_login_password_wo"]},"administrator_login_password_wo":{"type":"string","optional":true,"conflicts_with":["administrator_login_password"],"required_with":["administrator_login_password_wo_version"]},"administrator_login_password_wo_version":{"type":"number","optional":true,"required_with":["administrator_login_password_wo"]},"auto_grow_enabled":{"type":"bool","optional":true,"default":true},"backup_retention_days":{"type":"number","optional":true,"computed":true},"create_mode":{"type":"string","optional":true,"default":"Default"},"creation_source_server_id":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"geo_redundant_backup_enabled":{"type":"bool","optional":true,"default":false},"infrastructure_encryption_enabled":{"type":"bool","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"restore_point_in_time":{"type":"string","optional":true},"sku_name":{"type":"string","required":true},"ssl_enforcement_enabled":{"type":"bool","required":true},"ssl_minimal_tls_version_enforced":{"type":"string","optional":true,"default":"TLS1_2"},"storage_mb":{"type":"number","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"threat_detection_policy":{"nesting_mode":3,"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"email_account_admins":{"type":"bool","optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"email_addresses":{"type":["set","string"],"optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"enabled":{"type":"bool","optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"retention_days":{"type":"number","optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"storage_account_access_key":{"type":"string","optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]},"storage_endpoint":{"type":"string","optional":true,"at_least_one_of":["threat_detection_policy.0.enabled","threat_detection_policy.0.disabled_alerts","threat_detection_policy.0.email_account_admins","threat_detection_policy.0.email_addresses","threat_detection_policy.0.retention_days","threat_detection_policy.0.storage_account_access_key","threat_detection_policy.0.storage_endpoint"]}}},"optional":true}}}},"azurerm_postgresql_server_key":{"block":{"attributes":{"key_vault_key_id":{"type":"string","required":true},"server_id":{"type":"string","required":true}}}},"azurerm_postgresql_virtual_network_rule":{"block":{"attributes":{"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_powerbi_embedded":{"block":{"attributes":{"administrators":{"type":["set","string"],"required":true},"location":{"type":"string","required":true},"mode":{"type":"string","optional":true,"default":"Gen1"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_private_dns_a_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_private_dns_aaaa_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_private_dns_cname_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"record":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_private_dns_mx_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","optional":true,"default":"@"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"exchange":{"type":"string","required":true},"preference":{"type":"number","required":true}}},"required":true}}}},"azurerm_private_dns_ptr_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"records":{"type":["set","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}}}},"azurerm_private_dns_resolver":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_id":{"type":"string","required":true}}}},"azurerm_private_dns_resolver_dns_forwarding_ruleset":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_dns_resolver_outbound_endpoint_ids":{"type":["list","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_private_dns_resolver_forwarding_rule":{"block":{"attributes":{"dns_forwarding_ruleset_id":{"type":"string","required":true},"domain_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true}},"block_types":{"target_dns_servers":{"nesting_mode":3,"block":{"attributes":{"ip_address":{"type":"string","required":true},"port":{"type":"number","optional":true}}},"required":true}}}},"azurerm_private_dns_resolver_inbound_endpoint":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_dns_resolver_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ip_configurations":{"nesting_mode":3,"block":{"attributes":{"private_ip_address":{"type":"string","optional":true,"computed":true},"private_ip_allocation_method":{"type":"string","optional":true,"default":"Dynamic"},"subnet_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_private_dns_resolver_outbound_endpoint":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_dns_resolver_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_private_dns_resolver_virtual_network_link":{"block":{"attributes":{"dns_forwarding_ruleset_id":{"type":"string","required":true},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"virtual_network_id":{"type":"string","required":true}}}},"azurerm_private_dns_srv_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"port":{"type":"number","required":true},"priority":{"type":"number","required":true},"target":{"type":"string","required":true},"weight":{"type":"number","required":true}}},"required":true}}}},"azurerm_private_dns_txt_record":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","required":true},"zone_name":{"type":"string","required":true}},"block_types":{"record":{"nesting_mode":4,"block":{"attributes":{"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_private_dns_zone":{"block":{"attributes":{"max_number_of_record_sets":{"type":"number","computed":true},"max_number_of_virtual_network_links":{"type":"number","computed":true},"max_number_of_virtual_network_links_with_registration":{"type":"number","computed":true},"name":{"type":"string","required":true},"number_of_record_sets":{"type":"number","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"soa_record":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","required":true},"expire_time":{"type":"number","optional":true,"default":2419200},"fqdn":{"type":"string","computed":true},"host_name":{"type":"string","computed":true},"minimum_ttl":{"type":"number","optional":true,"default":10},"refresh_time":{"type":"number","optional":true,"default":3600},"retry_time":{"type":"number","optional":true,"default":300},"serial_number":{"type":"number","computed":true},"tags":{"type":["map","string"],"optional":true},"ttl":{"type":"number","optional":true,"default":3600}}},"optional":true,"computed":true}}}},"azurerm_private_dns_zone_virtual_network_link":{"block":{"attributes":{"name":{"type":"string","required":true},"private_dns_zone_name":{"type":"string","required":true},"registration_enabled":{"type":"bool","optional":true,"default":false},"resolution_policy":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_id":{"type":"string","required":true}}}},"azurerm_private_endpoint":{"block":{"attributes":{"custom_dns_configs":{"type":["list",["object",{"fqdn":"string","ip_addresses":["list","string"]}]],"computed":true},"custom_network_interface_name":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_interface":{"type":["list",["object",{"id":"string","name":"string"}]],"computed":true},"private_dns_zone_configs":{"type":["list",["object",{"id":"string","name":"string","private_dns_zone_id":"string","record_sets":["list",["object",{"fqdn":"string","ip_addresses":["list","string"],"name":"string","ttl":"number","type":"string"}]]}]],"computed":true},"resource_group_name":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"member_name":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"private_ip_address":{"type":"string","required":true},"subresource_name":{"type":"string","optional":true}}},"optional":true},"private_dns_zone_group":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","computed":true},"name":{"type":"string","required":true},"private_dns_zone_ids":{"type":["list","string"],"required":true}}},"optional":true},"private_service_connection":{"nesting_mode":3,"block":{"attributes":{"is_manual_connection":{"type":"bool","required":true},"name":{"type":"string","required":true},"private_connection_resource_alias":{"type":"string","optional":true,"exactly_one_of":["private_service_connection.0.private_connection_resource_alias","private_service_connection.0.private_connection_resource_id"]},"private_connection_resource_id":{"type":"string","optional":true,"exactly_one_of":["private_service_connection.0.private_connection_resource_alias","private_service_connection.0.private_connection_resource_id"]},"private_ip_address":{"type":"string","computed":true},"request_message":{"type":"string","optional":true},"subresource_names":{"type":["list","string"],"optional":true}}},"required":true}}}},"azurerm_private_endpoint_application_security_group_association":{"block":{"attributes":{"application_security_group_id":{"type":"string","required":true},"private_endpoint_id":{"type":"string","required":true}}}},"azurerm_private_link_service":{"block":{"attributes":{"alias":{"type":"string","computed":true},"auto_approval_subscription_ids":{"type":["set","string"],"optional":true},"destination_ip_address":{"type":"string","optional":true,"exactly_one_of":["load_balancer_frontend_ip_configuration_ids","destination_ip_address"]},"enable_proxy_protocol":{"type":"bool","optional":true},"fqdns":{"type":["list","string"],"optional":true},"load_balancer_frontend_ip_configuration_ids":{"type":["set","string"],"optional":true,"exactly_one_of":["load_balancer_frontend_ip_configuration_ids","destination_ip_address"]},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"visibility_subscription_ids":{"type":["set","string"],"optional":true}},"block_types":{"nat_ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"primary":{"type":"bool","required":true},"private_ip_address":{"type":"string","optional":true},"private_ip_address_version":{"type":"string","optional":true,"default":"IPv4"},"subnet_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_proximity_placement_group":{"block":{"attributes":{"allowed_vm_sizes":{"type":["set","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone":{"type":"string","optional":true,"required_with":["allowed_vm_sizes"]}}}},"azurerm_public_ip":{"block":{"attributes":{"allocation_method":{"type":"string","required":true},"ddos_protection_mode":{"type":"string","optional":true,"default":"VirtualNetworkInherited"},"ddos_protection_plan_id":{"type":"string","optional":true},"domain_name_label":{"type":"string","optional":true},"domain_name_label_scope":{"type":"string","optional":true},"edge_zone":{"type":"string","optional":true},"fqdn":{"type":"string","computed":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"default":4},"ip_address":{"type":"string","computed":true},"ip_tags":{"type":["map","string"],"optional":true},"ip_version":{"type":"string","optional":true,"default":"IPv4"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_ip_prefix_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"reverse_fqdn":{"type":"string","optional":true},"sku":{"type":"string","optional":true,"default":"Standard"},"sku_tier":{"type":"string","optional":true,"default":"Regional"},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_public_ip_prefix":{"block":{"attributes":{"custom_ip_prefix_id":{"type":"string","optional":true},"ip_prefix":{"type":"string","computed":true},"ip_version":{"type":"string","optional":true,"default":"IPv4"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"prefix_length":{"type":"number","optional":true,"default":28},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Standard"},"sku_tier":{"type":"string","optional":true,"default":"Regional"},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_purview_account":{"block":{"attributes":{"atlas_kafka_endpoint_primary_connection_string":{"type":"string","computed":true},"atlas_kafka_endpoint_secondary_connection_string":{"type":"string","computed":true},"aws_external_id":{"type":"string","computed":true},"catalog_endpoint":{"type":"string","computed":true},"guardian_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"managed_event_hub_enabled":{"type":"bool","optional":true,"default":true},"managed_resource_group_name":{"type":"string","optional":true,"computed":true},"managed_resources":{"type":["list",["object",{"event_hub_namespace_id":"string","resource_group_id":"string","storage_account_id":"string"}]],"computed":true},"name":{"type":"string","required":true},"public_network_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"scan_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_qumulo_file_system":{"block":{"attributes":{"admin_password":{"type":"string","required":true},"email":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"offer_id":{"type":"string","optional":true,"default":"qumulo-saas-mpp"},"plan_id":{"type":"string","optional":true,"default":"azure-native-qumulo-v3"},"publisher_id":{"type":"string","optional":true,"default":"qumulo1584033880660"},"resource_group_name":{"type":"string","required":true},"storage_sku":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zone":{"type":"string","required":true}}}},"azurerm_recovery_services_vault":{"block":{"attributes":{"classic_vmware_replication_enabled":{"type":"bool","optional":true},"cross_region_restore_enabled":{"type":"bool","optional":true,"default":false},"immutability":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"soft_delete_enabled":{"type":"bool","optional":true,"default":true},"storage_mode_type":{"type":"string","optional":true,"default":"GeoRedundant"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"encryption":{"nesting_mode":3,"block":{"attributes":{"infrastructure_encryption_enabled":{"type":"bool","required":true},"key_id":{"type":"string","required":true},"use_system_assigned_identity":{"type":"bool","optional":true,"default":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true,"required_with":["identity"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"monitoring":{"nesting_mode":3,"block":{"attributes":{"alerts_for_all_job_failures_enabled":{"type":"bool","optional":true,"default":true},"alerts_for_critical_operation_failures_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_recovery_services_vault_resource_guard_association":{"block":{"attributes":{"resource_guard_id":{"type":"string","required":true},"vault_id":{"type":"string","required":true}}}},"azurerm_redhat_openshift_cluster":{"block":{"attributes":{"console_url":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"api_server_profile":{"nesting_mode":3,"block":{"attributes":{"ip_address":{"type":"string","computed":true},"url":{"type":"string","computed":true},"visibility":{"type":"string","required":true}}},"required":true},"cluster_profile":{"nesting_mode":3,"block":{"attributes":{"domain":{"type":"string","required":true},"fips_enabled":{"type":"bool","optional":true,"default":false},"managed_resource_group_name":{"type":"string","optional":true},"pull_secret":{"type":"string","optional":true},"resource_group_id":{"type":"string","computed":true},"version":{"type":"string","required":true}}},"required":true},"ingress_profile":{"nesting_mode":3,"block":{"attributes":{"ip_address":{"type":"string","computed":true},"name":{"type":"string","computed":true},"visibility":{"type":"string","required":true}}},"required":true},"main_profile":{"nesting_mode":3,"block":{"attributes":{"disk_encryption_set_id":{"type":"string","optional":true},"encryption_at_host_enabled":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","required":true},"vm_size":{"type":"string","required":true}}},"required":true},"network_profile":{"nesting_mode":3,"block":{"attributes":{"outbound_type":{"type":"string","optional":true,"default":"Loadbalancer"},"pod_cidr":{"type":"string","required":true},"preconfigured_network_security_group_enabled":{"type":"bool","optional":true,"default":false},"service_cidr":{"type":"string","required":true}}},"required":true},"service_principal":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","required":true}}},"required":true},"worker_profile":{"nesting_mode":3,"block":{"attributes":{"disk_encryption_set_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","required":true},"encryption_at_host_enabled":{"type":"bool","optional":true,"default":false},"node_count":{"type":"number","required":true},"subnet_id":{"type":"string","required":true},"vm_size":{"type":"string","required":true}}},"required":true}}}},"azurerm_redis_cache":{"block":{"attributes":{"access_keys_authentication_enabled":{"type":"bool","optional":true,"default":true},"capacity":{"type":"number","required":true},"family":{"type":"string","required":true},"hostname":{"type":"string","computed":true},"location":{"type":"string","required":true},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"non_ssl_port_enabled":{"type":"bool","optional":true,"default":false},"port":{"type":"number","computed":true},"primary_access_key":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"private_static_ip_address":{"type":"string","optional":true,"computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"redis_version":{"type":"string","optional":true,"default":"6"},"replicas_per_master":{"type":"number","optional":true,"computed":true},"replicas_per_primary":{"type":"number","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"shard_count":{"type":"number","optional":true},"sku_name":{"type":"string","required":true},"ssl_port":{"type":"number","computed":true},"subnet_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"tenant_settings":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"patch_schedule":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"string","required":true},"maintenance_window":{"type":"string","optional":true,"default":"PT5H"},"start_hour_utc":{"type":"number","optional":true}}},"optional":true},"redis_configuration":{"nesting_mode":3,"block":{"attributes":{"active_directory_authentication_enabled":{"type":"bool","optional":true},"aof_backup_enabled":{"type":"bool","optional":true},"aof_storage_connection_string_0":{"type":"string","optional":true},"aof_storage_connection_string_1":{"type":"string","optional":true},"authentication_enabled":{"type":"bool","optional":true,"default":true},"data_persistence_authentication_method":{"type":"string","optional":true},"maxclients":{"type":"number","computed":true},"maxfragmentationmemory_reserved":{"type":"number","optional":true,"computed":true},"maxmemory_delta":{"type":"number","optional":true,"computed":true},"maxmemory_policy":{"type":"string","optional":true,"default":"volatile-lru"},"maxmemory_reserved":{"type":"number","optional":true,"computed":true},"notify_keyspace_events":{"type":"string","optional":true},"rdb_backup_enabled":{"type":"bool","optional":true},"rdb_backup_frequency":{"type":"number","optional":true},"rdb_backup_max_snapshot_count":{"type":"number","optional":true},"rdb_storage_connection_string":{"type":"string","optional":true},"storage_account_subscription_id":{"type":"string","optional":true}}},"optional":true,"computed":true}}}},"azurerm_redis_cache_access_policy":{"block":{"attributes":{"name":{"type":"string","required":true},"permissions":{"type":"string","required":true},"redis_cache_id":{"type":"string","required":true}}}},"azurerm_redis_cache_access_policy_assignment":{"block":{"attributes":{"access_policy_name":{"type":"string","required":true},"name":{"type":"string","required":true},"object_id":{"type":"string","required":true},"object_id_alias":{"type":"string","required":true},"redis_cache_id":{"type":"string","required":true}}}},"azurerm_redis_enterprise_cluster":{"block":{"attributes":{"hostname":{"type":"string","computed":true},"location":{"type":"string","required":true},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"zones":{"type":["set","string"],"optional":true}}}},"azurerm_redis_enterprise_database":{"block":{"attributes":{"client_protocol":{"type":"string","optional":true,"default":"Encrypted"},"cluster_id":{"type":"string","required":true},"clustering_policy":{"type":"string","optional":true,"default":"OSSCluster"},"eviction_policy":{"type":"string","optional":true,"default":"VolatileLRU"},"linked_database_group_nickname":{"type":"string","optional":true,"required_with":["linked_database_id"]},"linked_database_id":{"type":["set","string"],"optional":true},"name":{"type":"string","optional":true,"default":"default"},"port":{"type":"number","optional":true,"default":10000},"primary_access_key":{"type":"string","computed":true},"secondary_access_key":{"type":"string","computed":true}},"block_types":{"module":{"nesting_mode":3,"block":{"attributes":{"args":{"type":"string","optional":true,"default":""},"name":{"type":"string","required":true},"version":{"type":"string","computed":true}}},"optional":true}}}},"azurerm_redis_firewall_rule":{"block":{"attributes":{"end_ip":{"type":"string","required":true},"name":{"type":"string","required":true},"redis_cache_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"start_ip":{"type":"string","required":true}}}},"azurerm_redis_linked_server":{"block":{"attributes":{"geo_replicated_primary_host_name":{"type":"string","computed":true},"linked_redis_cache_id":{"type":"string","required":true},"linked_redis_cache_location":{"type":"string","required":true},"name":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"server_role":{"type":"string","required":true},"target_redis_cache_name":{"type":"string","required":true}}}},"azurerm_relay_hybrid_connection":{"block":{"attributes":{"name":{"type":"string","required":true},"relay_namespace_name":{"type":"string","required":true},"requires_client_authorization":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"user_metadata":{"type":"string","optional":true}}}},"azurerm_relay_hybrid_connection_authorization_rule":{"block":{"attributes":{"hybrid_connection_name":{"type":"string","required":true},"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_relay_namespace":{"block":{"attributes":{"location":{"type":"string","required":true},"metric_id":{"type":"string","computed":true},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_relay_namespace_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_resource_deployment_script_azure_cli":{"block":{"attributes":{"cleanup_preference":{"type":"string","optional":true,"default":"Always"},"command_line":{"type":"string","optional":true},"force_update_tag":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outputs":{"type":"string","computed":true},"primary_script_uri":{"type":"string","optional":true,"exactly_one_of":["primary_script_uri","script_content"]},"resource_group_name":{"type":"string","required":true},"retention_interval":{"type":"string","required":true},"script_content":{"type":"string","optional":true,"exactly_one_of":["primary_script_uri","script_content"]},"supporting_script_uris":{"type":["list","string"],"optional":true},"tags":{"type":["map","string"],"optional":true},"timeout":{"type":"string","optional":true,"default":"P1D"},"version":{"type":"string","required":true}},"block_types":{"container":{"nesting_mode":3,"block":{"attributes":{"container_group_name":{"type":"string","optional":true}}},"optional":true},"environment_variable":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"secure_value":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_resource_deployment_script_azure_power_shell":{"block":{"attributes":{"cleanup_preference":{"type":"string","optional":true,"default":"Always"},"command_line":{"type":"string","optional":true},"force_update_tag":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outputs":{"type":"string","computed":true},"primary_script_uri":{"type":"string","optional":true,"exactly_one_of":["primary_script_uri","script_content"]},"resource_group_name":{"type":"string","required":true},"retention_interval":{"type":"string","required":true},"script_content":{"type":"string","optional":true,"exactly_one_of":["primary_script_uri","script_content"]},"supporting_script_uris":{"type":["list","string"],"optional":true},"tags":{"type":["map","string"],"optional":true},"timeout":{"type":"string","optional":true,"default":"P1D"},"version":{"type":"string","required":true}},"block_types":{"container":{"nesting_mode":3,"block":{"attributes":{"container_group_name":{"type":"string","optional":true}}},"optional":true},"environment_variable":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"secure_value":{"type":"string","optional":true},"value":{"type":"string","optional":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"storage_account":{"nesting_mode":3,"block":{"attributes":{"key":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_resource_group":{"block":{"attributes":{"location":{"type":"string","required":true},"managed_by":{"type":"string","optional":true},"name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_resource_group_cost_management_export":{"block":{"attributes":{"active":{"type":"bool","optional":true,"default":true},"file_format":{"type":"string","optional":true,"default":"Csv"},"name":{"type":"string","required":true},"recurrence_period_end_date":{"type":"string","required":true},"recurrence_period_start_date":{"type":"string","required":true},"recurrence_type":{"type":"string","required":true},"resource_group_id":{"type":"string","required":true}},"block_types":{"export_data_options":{"nesting_mode":3,"block":{"attributes":{"time_frame":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true},"export_data_storage_location":{"nesting_mode":3,"block":{"attributes":{"container_id":{"type":"string","required":true},"root_folder_path":{"type":"string","required":true}}},"required":true}}}},"azurerm_resource_group_cost_management_view":{"block":{"attributes":{"accumulated":{"type":"bool","required":true},"chart_type":{"type":"string","required":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true},"report_type":{"type":"string","required":true},"resource_group_id":{"type":"string","required":true},"timeframe":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"granularity":{"type":"string","required":true}},"block_types":{"aggregation":{"nesting_mode":4,"block":{"attributes":{"column_name":{"type":"string","required":true},"name":{"type":"string","required":true}}},"required":true},"grouping":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true},"sorting":{"nesting_mode":3,"block":{"attributes":{"direction":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}},"required":true},"kpi":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}}},"optional":true},"pivot":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_resource_group_policy_assignment":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"enforce":{"type":"bool","optional":true,"default":true},"location":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"not_scopes":{"type":["list","string"],"optional":true},"parameters":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true},"resource_group_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"non_compliance_message":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true}}},"optional":true},"overrides":{"nesting_mode":3,"block":{"attributes":{"value":{"type":"string","required":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","optional":true,"default":"policyDefinitionReferenceId"},"not_in":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"resource_selectors":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","required":true},"not_in":{"type":["list","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_resource_group_policy_exemption":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"exemption_category":{"type":"string","required":true},"expires_on":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_ids":{"type":["list","string"],"optional":true},"resource_group_id":{"type":"string","required":true}}}},"azurerm_resource_group_policy_remediation":{"block":{"attributes":{"failure_percentage":{"type":"number","optional":true},"location_filters":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"parallel_deployments":{"type":"number","optional":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true},"resource_count":{"type":"number","optional":true},"resource_discovery_mode":{"type":"string","optional":true,"default":"ExistingNonCompliant"},"resource_group_id":{"type":"string","required":true}}}},"azurerm_resource_group_template_deployment":{"block":{"attributes":{"debug_level":{"type":"string","optional":true},"deployment_mode":{"type":"string","required":true},"name":{"type":"string","required":true},"output_content":{"type":"string","computed":true},"parameters_content":{"type":"string","optional":true,"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"template_content":{"type":"string","optional":true,"computed":true,"exactly_one_of":["template_content","template_spec_version_id"]},"template_spec_version_id":{"type":"string","optional":true,"exactly_one_of":["template_content","template_spec_version_id"]}}}},"azurerm_resource_management_private_link":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_resource_management_private_link_association":{"block":{"attributes":{"management_group_id":{"type":"string","required":true},"name":{"type":"string","optional":true},"public_network_access_enabled":{"type":"bool","required":true},"resource_management_private_link_id":{"type":"string","required":true},"tenant_id":{"type":"string","computed":true}}}},"azurerm_resource_policy_assignment":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"enforce":{"type":"bool","optional":true,"default":true},"location":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"not_scopes":{"type":["list","string"],"optional":true},"parameters":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true},"resource_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"non_compliance_message":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true}}},"optional":true},"overrides":{"nesting_mode":3,"block":{"attributes":{"value":{"type":"string","required":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","optional":true,"default":"policyDefinitionReferenceId"},"not_in":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"resource_selectors":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","required":true},"not_in":{"type":["list","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_resource_policy_exemption":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"exemption_category":{"type":"string","required":true},"expires_on":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_ids":{"type":["list","string"],"optional":true},"resource_id":{"type":"string","required":true}}}},"azurerm_resource_policy_remediation":{"block":{"attributes":{"failure_percentage":{"type":"number","optional":true},"location_filters":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"parallel_deployments":{"type":"number","optional":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true},"resource_count":{"type":"number","optional":true},"resource_discovery_mode":{"type":"string","optional":true,"default":"ExistingNonCompliant"},"resource_id":{"type":"string","required":true}}}},"azurerm_resource_provider_registration":{"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"feature":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"registered":{"type":"bool","required":true}}},"optional":true}}}},"azurerm_restore_point_collection":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_virtual_machine_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_role_assignment":{"block":{"attributes":{"condition":{"type":"string","optional":true},"condition_version":{"type":"string","optional":true,"computed":true},"delegated_managed_identity_resource_id":{"type":"string","optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"principal_id":{"type":"string","required":true},"principal_type":{"type":"string","optional":true,"computed":true},"role_definition_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["role_definition_id","role_definition_name"]},"role_definition_name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["role_definition_name","role_definition_id"]},"scope":{"type":"string","required":true},"skip_service_principal_aad_check":{"type":"bool","optional":true,"computed":true}}}},"azurerm_role_definition":{"block":{"attributes":{"assignable_scopes":{"type":["list","string"],"optional":true,"computed":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"role_definition_id":{"type":"string","optional":true,"computed":true},"role_definition_resource_id":{"type":"string","computed":true},"scope":{"type":"string","required":true}},"block_types":{"permissions":{"nesting_mode":3,"block":{"attributes":{"actions":{"type":["list","string"],"optional":true},"data_actions":{"type":["set","string"],"optional":true},"not_actions":{"type":["list","string"],"optional":true},"not_data_actions":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_role_management_policy":{"block":{"attributes":{"description":{"type":"string","computed":true},"name":{"type":"string","computed":true},"role_definition_id":{"type":"string","required":true},"scope":{"type":"string","required":true}},"block_types":{"activation_rules":{"nesting_mode":3,"block":{"attributes":{"maximum_duration":{"type":"string","optional":true,"computed":true},"require_approval":{"type":"bool","optional":true,"computed":true},"require_justification":{"type":"bool","optional":true,"computed":true},"require_multifactor_authentication":{"type":"bool","optional":true,"computed":true,"conflicts_with":["activation_rules.0.required_conditional_access_authentication_context"]},"require_ticket_info":{"type":"bool","optional":true,"computed":true},"required_conditional_access_authentication_context":{"type":"string","optional":true,"computed":true,"conflicts_with":["activation_rules.0.require_multifactor_authentication"]}},"block_types":{"approval_stage":{"nesting_mode":3,"block":{"block_types":{"primary_approver":{"nesting_mode":4,"block":{"attributes":{"object_id":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"active_assignment_rules":{"nesting_mode":3,"block":{"attributes":{"expiration_required":{"type":"bool","optional":true,"computed":true},"expire_after":{"type":"string","optional":true,"computed":true},"require_justification":{"type":"bool","optional":true,"computed":true},"require_multifactor_authentication":{"type":"bool","optional":true,"computed":true},"require_ticket_info":{"type":"bool","optional":true,"computed":true}}},"optional":true,"computed":true},"eligible_assignment_rules":{"nesting_mode":3,"block":{"attributes":{"expiration_required":{"type":"bool","optional":true,"computed":true},"expire_after":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"notification_rules":{"nesting_mode":3,"block":{"block_types":{"active_assignments":{"nesting_mode":3,"block":{"block_types":{"admin_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"approver_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"assignee_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"eligible_activations":{"nesting_mode":3,"block":{"block_types":{"admin_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"approver_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"assignee_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"eligible_assignments":{"nesting_mode":3,"block":{"block_types":{"admin_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"approver_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true},"assignee_notifications":{"nesting_mode":3,"block":{"attributes":{"additional_recipients":{"type":["set","string"],"optional":true,"computed":true},"default_recipients":{"type":"bool","required":true},"notification_level":{"type":"string","required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_route":{"block":{"attributes":{"address_prefix":{"type":"string","required":true},"name":{"type":"string","required":true},"next_hop_in_ip_address":{"type":"string","optional":true},"next_hop_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"route_table_name":{"type":"string","required":true}}}},"azurerm_route_filter":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"rule":{"type":["list",["object",{"access":"string","communities":["list","string"],"name":"string","rule_type":"string"}]],"optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_route_map":{"block":{"attributes":{"name":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"next_step_if_matched":{"type":"string","optional":true,"default":"Unknown"}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}},"block_types":{"parameter":{"nesting_mode":3,"block":{"attributes":{"as_path":{"type":["list","string"],"optional":true},"community":{"type":["list","string"],"optional":true},"route_prefix":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"match_criterion":{"nesting_mode":3,"block":{"attributes":{"as_path":{"type":["list","string"],"optional":true},"community":{"type":["list","string"],"optional":true},"match_condition":{"type":"string","required":true},"route_prefix":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_route_server":{"block":{"attributes":{"branch_to_branch_traffic_enabled":{"type":"bool","optional":true,"default":false},"hub_routing_preference":{"type":"string","optional":true,"default":"ExpressRoute"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_ip_address_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"routing_state":{"type":"string","computed":true},"sku":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_router_asn":{"type":"number","computed":true},"virtual_router_ips":{"type":["set","string"],"computed":true}}}},"azurerm_route_server_bgp_connection":{"block":{"attributes":{"name":{"type":"string","required":true},"peer_asn":{"type":"number","required":true},"peer_ip":{"type":"string","required":true},"route_server_id":{"type":"string","required":true}}}},"azurerm_route_table":{"block":{"attributes":{"bgp_route_propagation_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"route":{"type":["set",["object",{"address_prefix":"string","name":"string","next_hop_in_ip_address":"string","next_hop_type":"string"}]],"optional":true,"computed":true},"subnets":{"type":["set","string"],"computed":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_search_service":{"block":{"attributes":{"allowed_ips":{"type":["set","string"],"optional":true},"authentication_failure_mode":{"type":"string","optional":true},"customer_managed_key_encryption_compliance_status":{"type":"string","computed":true},"customer_managed_key_enforcement_enabled":{"type":"bool","optional":true,"default":false},"hosting_mode":{"type":"string","optional":true,"default":"Default"},"local_authentication_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_rule_bypass_option":{"type":"string","optional":true,"default":"None"},"partition_count":{"type":"number","optional":true,"default":1},"primary_key":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"query_keys":{"type":["list",["object",{"key":"string","name":"string"}]],"computed":true},"replica_count":{"type":"number","optional":true,"default":1},"resource_group_name":{"type":"string","required":true},"secondary_key":{"type":"string","computed":true},"semantic_search_sku":{"type":"string","optional":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_search_shared_private_link_service":{"block":{"attributes":{"name":{"type":"string","required":true},"request_message":{"type":"string","optional":true},"search_service_id":{"type":"string","required":true},"status":{"type":"string","computed":true},"subresource_name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_security_center_assessment":{"block":{"attributes":{"additional_data":{"type":["map","string"],"optional":true},"assessment_policy_id":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}},"block_types":{"status":{"nesting_mode":3,"block":{"attributes":{"cause":{"type":"string","optional":true},"code":{"type":"string","required":true},"description":{"type":"string","optional":true}}},"required":true}}}},"azurerm_security_center_assessment_policy":{"block":{"attributes":{"categories":{"type":["set","string"],"optional":true,"computed":true},"description":{"type":"string","required":true},"display_name":{"type":"string","required":true},"implementation_effort":{"type":"string","optional":true},"name":{"type":"string","computed":true},"remediation_description":{"type":"string","optional":true},"severity":{"type":"string","optional":true,"default":"Medium"},"threats":{"type":["set","string"],"optional":true},"user_impact":{"type":"string","optional":true}}}},"azurerm_security_center_auto_provisioning":{"block":{"attributes":{"auto_provision":{"type":"string","required":true}}}},"azurerm_security_center_automation":{"block":{"attributes":{"description":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"scopes":{"type":["list","string"],"required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"connection_string":{"type":"string","optional":true},"resource_id":{"type":"string","required":true},"trigger_url":{"type":"string","optional":true},"type":{"type":"string","optional":true,"computed":true}}},"required":true},"source":{"nesting_mode":3,"block":{"attributes":{"event_source":{"type":"string","required":true}},"block_types":{"rule_set":{"nesting_mode":3,"block":{"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"expected_value":{"type":"string","required":true},"operator":{"type":"string","required":true},"property_path":{"type":"string","required":true},"property_type":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"required":true}}}},"azurerm_security_center_contact":{"block":{"attributes":{"alert_notifications":{"type":"bool","required":true},"alerts_to_admins":{"type":"bool","required":true},"email":{"type":"string","required":true},"name":{"type":"string","required":true},"phone":{"type":"string","optional":true}}}},"azurerm_security_center_server_vulnerability_assessment_virtual_machine":{"block":{"attributes":{"virtual_machine_id":{"type":"string","required":true}}}},"azurerm_security_center_server_vulnerability_assessments_setting":{"block":{"attributes":{"vulnerability_assessment_provider":{"type":"string","required":true}}}},"azurerm_security_center_setting":{"block":{"attributes":{"enabled":{"type":"bool","required":true},"setting_name":{"type":"string","required":true}}}},"azurerm_security_center_storage_defender":{"block":{"attributes":{"malware_scanning_on_upload_cap_gb_per_month":{"type":"number","optional":true,"default":-1},"malware_scanning_on_upload_enabled":{"type":"bool","optional":true,"default":false},"override_subscription_settings_enabled":{"type":"bool","optional":true,"default":false},"scan_results_event_grid_topic_id":{"type":"string","optional":true},"sensitive_data_discovery_enabled":{"type":"bool","optional":true,"default":false},"storage_account_id":{"type":"string","required":true}}}},"azurerm_security_center_subscription_pricing":{"block":{"attributes":{"resource_type":{"type":"string","optional":true,"default":"VirtualMachines"},"subplan":{"type":"string","optional":true},"tier":{"type":"string","required":true}},"block_types":{"extension":{"nesting_mode":4,"block":{"attributes":{"additional_extension_properties":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_security_center_workspace":{"block":{"attributes":{"scope":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_sentinel_alert_rule_anomaly_built_in":{"block":{"attributes":{"anomaly_settings_version":{"type":"number","computed":true},"anomaly_version":{"type":"string","computed":true},"description":{"type":"string","computed":true},"display_name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["name","display_name"]},"enabled":{"type":"bool","required":true},"frequency":{"type":"string","computed":true},"log_analytics_workspace_id":{"type":"string","required":true},"mode":{"type":"string","required":true},"multi_select_observation":{"type":["list",["object",{"description":"string","name":"string","supported_values":["list","string"],"values":["list","string"]}]],"computed":true},"name":{"type":"string","optional":true,"computed":true,"exactly_one_of":["name","display_name"]},"prioritized_exclude_observation":{"type":["list",["object",{"description":"string","exclude":"string","name":"string","prioritize":"string"}]],"computed":true},"required_data_connector":{"type":["list",["object",{"connector_id":"string","data_types":["list","string"]}]],"computed":true},"settings_definition_id":{"type":"string","computed":true},"single_select_observation":{"type":["list",["object",{"description":"string","name":"string","supported_values":["list","string"],"value":"string"}]],"computed":true},"tactics":{"type":["list","string"],"computed":true},"techniques":{"type":["list","string"],"computed":true},"threshold_observation":{"type":["list",["object",{"description":"string","max":"string","min":"string","name":"string","value":"string"}]],"computed":true}}}},"azurerm_sentinel_alert_rule_anomaly_duplicate":{"block":{"attributes":{"anomaly_settings_version":{"type":"number","computed":true},"anomaly_version":{"type":"string","computed":true},"built_in_rule_id":{"type":"string","required":true},"description":{"type":"string","computed":true},"display_name":{"type":"string","required":true},"enabled":{"type":"bool","required":true},"frequency":{"type":"string","computed":true},"is_default_settings":{"type":"bool","computed":true},"log_analytics_workspace_id":{"type":"string","required":true},"mode":{"type":"string","required":true},"name":{"type":"string","computed":true},"required_data_connector":{"type":["list",["object",{"connector_id":"string","data_types":["list","string"]}]],"computed":true},"settings_definition_id":{"type":"string","computed":true},"tactics":{"type":["list","string"],"computed":true},"techniques":{"type":["list","string"],"computed":true}},"block_types":{"multi_select_observation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","computed":true},"name":{"type":"string","required":true},"supported_values":{"type":["list","string"],"computed":true},"values":{"type":["list","string"],"required":true}}},"optional":true,"computed":true},"prioritized_exclude_observation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","computed":true},"exclude":{"type":"string","optional":true},"name":{"type":"string","required":true},"prioritize":{"type":"string","optional":true}}},"optional":true,"computed":true},"single_select_observation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","computed":true},"name":{"type":"string","required":true},"supported_values":{"type":["list","string"],"computed":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true},"threshold_observation":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","computed":true},"max":{"type":"string","computed":true},"min":{"type":"string","computed":true},"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_sentinel_alert_rule_fusion":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","optional":true,"default":"BuiltInFusion"}},"block_types":{"source":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true}},"block_types":{"sub_type":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"severities_allowed":{"type":["set","string"],"required":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_sentinel_alert_rule_machine_learning_behavior_analytics":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_sentinel_alert_rule_ms_security_incident":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"display_name_exclude_filter":{"type":["set","string"],"optional":true},"display_name_filter":{"type":["set","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"product_filter":{"type":"string","required":true},"severity_filter":{"type":["set","string"],"required":true}}}},"azurerm_sentinel_alert_rule_nrt":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","optional":true},"alert_rule_template_version":{"type":"string","optional":true},"custom_details":{"type":["map","string"],"optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"query":{"type":"string","required":true},"severity":{"type":"string","required":true},"suppression_duration":{"type":"string","optional":true,"default":"PT5H"},"suppression_enabled":{"type":"bool","optional":true,"default":false},"tactics":{"type":["set","string"],"optional":true},"techniques":{"type":["set","string"],"optional":true}},"block_types":{"alert_details_override":{"nesting_mode":3,"block":{"attributes":{"description_format":{"type":"string","optional":true},"display_name_format":{"type":"string","optional":true},"severity_column_name":{"type":"string","optional":true},"tactics_column_name":{"type":"string","optional":true}},"block_types":{"dynamic_property":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"entity_mapping":{"nesting_mode":3,"block":{"attributes":{"entity_type":{"type":"string","required":true}},"block_types":{"field_mapping":{"nesting_mode":3,"block":{"attributes":{"column_name":{"type":"string","required":true},"identifier":{"type":"string","required":true}}},"required":true}}},"optional":true},"event_grouping":{"nesting_mode":3,"block":{"attributes":{"aggregation_method":{"type":"string","required":true}}},"required":true},"incident":{"nesting_mode":3,"block":{"attributes":{"create_incident_enabled":{"type":"bool","required":true}},"block_types":{"grouping":{"nesting_mode":3,"block":{"attributes":{"by_alert_details":{"type":["list","string"],"optional":true},"by_custom_details":{"type":["list","string"],"optional":true},"by_entities":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"entity_matching_method":{"type":"string","optional":true,"default":"AnyAlert"},"lookback_duration":{"type":"string","optional":true,"default":"PT5M"},"reopen_closed_incidents":{"type":"bool","optional":true,"default":false}}},"required":true}}},"optional":true,"computed":true},"sentinel_entity_mapping":{"nesting_mode":3,"block":{"attributes":{"column_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_sentinel_alert_rule_scheduled":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","optional":true},"alert_rule_template_version":{"type":"string","optional":true},"custom_details":{"type":["map","string"],"optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"query":{"type":"string","required":true},"query_frequency":{"type":"string","optional":true,"default":"PT5H"},"query_period":{"type":"string","optional":true,"default":"PT5H"},"severity":{"type":"string","required":true},"suppression_duration":{"type":"string","optional":true,"default":"PT5H"},"suppression_enabled":{"type":"bool","optional":true,"default":false},"tactics":{"type":["set","string"],"optional":true},"techniques":{"type":["set","string"],"optional":true},"trigger_operator":{"type":"string","optional":true,"default":"GreaterThan"},"trigger_threshold":{"type":"number","optional":true,"default":0}},"block_types":{"alert_details_override":{"nesting_mode":3,"block":{"attributes":{"description_format":{"type":"string","optional":true},"display_name_format":{"type":"string","optional":true},"severity_column_name":{"type":"string","optional":true},"tactics_column_name":{"type":"string","optional":true}},"block_types":{"dynamic_property":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"optional":true},"entity_mapping":{"nesting_mode":3,"block":{"attributes":{"entity_type":{"type":"string","required":true}},"block_types":{"field_mapping":{"nesting_mode":3,"block":{"attributes":{"column_name":{"type":"string","required":true},"identifier":{"type":"string","required":true}}},"required":true}}},"optional":true},"event_grouping":{"nesting_mode":3,"block":{"attributes":{"aggregation_method":{"type":"string","required":true}}},"optional":true},"incident":{"nesting_mode":3,"block":{"attributes":{"create_incident_enabled":{"type":"bool","required":true}},"block_types":{"grouping":{"nesting_mode":3,"block":{"attributes":{"by_alert_details":{"type":["list","string"],"optional":true},"by_custom_details":{"type":["list","string"],"optional":true},"by_entities":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":true},"entity_matching_method":{"type":"string","optional":true,"default":"AnyAlert"},"lookback_duration":{"type":"string","optional":true,"default":"PT5M"},"reopen_closed_incidents":{"type":"bool","optional":true,"default":false}}},"required":true}}},"optional":true,"computed":true},"sentinel_entity_mapping":{"nesting_mode":3,"block":{"attributes":{"column_name":{"type":"string","required":true}}},"optional":true}}}},"azurerm_sentinel_alert_rule_threat_intelligence":{"block":{"attributes":{"alert_rule_template_guid":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_sentinel_automation_rule":{"block":{"attributes":{"condition_json":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"expiration":{"type":"string","optional":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"order":{"type":"number","required":true},"triggers_on":{"type":"string","optional":true,"default":"Incidents"},"triggers_when":{"type":"string","optional":true,"default":"Created"}},"block_types":{"action_incident":{"nesting_mode":3,"block":{"attributes":{"classification":{"type":"string","optional":true},"classification_comment":{"type":"string","optional":true},"labels":{"type":["list","string"],"optional":true},"order":{"type":"number","required":true},"owner_id":{"type":"string","optional":true},"severity":{"type":"string","optional":true},"status":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["action_incident","action_playbook"]},"action_incident_task":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"order":{"type":"number","required":true},"title":{"type":"string","required":true}}},"optional":true},"action_playbook":{"nesting_mode":3,"block":{"attributes":{"logic_app_id":{"type":"string","required":true},"order":{"type":"number","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true,"at_least_one_of":["action_incident","action_playbook"]}}}},"azurerm_sentinel_data_connector_aws_cloud_trail":{"block":{"attributes":{"aws_role_arn":{"type":"string","required":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_sentinel_data_connector_aws_s3":{"block":{"attributes":{"aws_role_arn":{"type":"string","required":true},"destination_table":{"type":"string","required":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"sqs_urls":{"type":["list","string"],"required":true}}}},"azurerm_sentinel_data_connector_azure_active_directory":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_azure_advanced_threat_protection":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_azure_security_center":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_dynamics_365":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_iot":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"subscription_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_microsoft_cloud_app_security":{"block":{"attributes":{"alerts_enabled":{"type":"bool","optional":true,"default":true},"discovery_logs_enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_microsoft_defender_advanced_threat_protection":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_microsoft_threat_intelligence":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"microsoft_emerging_threat_feed_lookback_date":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_microsoft_threat_protection":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_office_365":{"block":{"attributes":{"exchange_enabled":{"type":"bool","optional":true,"default":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"sharepoint_enabled":{"type":"bool","optional":true,"default":true},"teams_enabled":{"type":"bool","optional":true,"default":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_office_365_project":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_office_atp":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_office_irm":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_office_power_bi":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_threat_intelligence":{"block":{"attributes":{"log_analytics_workspace_id":{"type":"string","required":true},"lookback_date":{"type":"string","optional":true,"default":"1970-01-01T00:00:00Z"},"name":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}}},"azurerm_sentinel_data_connector_threat_intelligence_taxii":{"block":{"attributes":{"api_root_url":{"type":"string","required":true},"collection_id":{"type":"string","required":true},"display_name":{"type":"string","required":true},"log_analytics_workspace_id":{"type":"string","required":true},"lookback_date":{"type":"string","optional":true,"default":"1970-01-01T00:00:00Z"},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"polling_frequency":{"type":"string","optional":true,"default":"OnceAnHour"},"tenant_id":{"type":"string","optional":true,"computed":true},"user_name":{"type":"string","optional":true}}}},"azurerm_sentinel_log_analytics_workspace_onboarding":{"block":{"attributes":{"customer_managed_key_enabled":{"type":"bool","optional":true,"default":false},"workspace_id":{"type":"string","required":true}}}},"azurerm_sentinel_metadata":{"block":{"attributes":{"content_id":{"type":"string","required":true},"content_schema_version":{"type":"string","optional":true,"default":"2.0"},"custom_version":{"type":"string","optional":true},"dependency":{"type":"string","optional":true},"first_publish_date":{"type":"string","optional":true},"icon_id":{"type":"string","optional":true},"kind":{"type":"string","required":true},"last_publish_date":{"type":"string","optional":true},"name":{"type":"string","required":true},"parent_id":{"type":"string","required":true},"preview_images":{"type":["list","string"],"optional":true},"preview_images_dark":{"type":["list","string"],"optional":true},"providers":{"type":["list","string"],"optional":true},"threat_analysis_tactics":{"type":["list","string"],"optional":true},"threat_analysis_techniques":{"type":["list","string"],"optional":true},"version":{"type":"string","optional":true},"workspace_id":{"type":"string","required":true}},"block_types":{"author":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","optional":true},"link":{"type":"string","optional":true},"name":{"type":"string","optional":true}}},"optional":true},"category":{"nesting_mode":3,"block":{"attributes":{"domains":{"type":["list","string"],"optional":true},"verticals":{"type":["list","string"],"optional":true}}},"optional":true},"source":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","optional":true},"kind":{"type":"string","required":true},"name":{"type":"string","optional":true}}},"optional":true,"computed":true},"support":{"nesting_mode":3,"block":{"attributes":{"email":{"type":"string","optional":true},"link":{"type":"string","optional":true},"name":{"type":"string","optional":true},"tier":{"type":"string","required":true}}},"optional":true}}}},"azurerm_sentinel_threat_intelligence_indicator":{"block":{"attributes":{"confidence":{"type":"number","optional":true,"default":-1},"created_by":{"type":"string","optional":true},"created_on":{"type":"string","computed":true},"defanged":{"type":"bool","computed":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"extension":{"type":"string","optional":true,"computed":true},"external_id":{"type":"string","computed":true},"external_last_updated_time_utc":{"type":"string","computed":true},"guid":{"type":"string","computed":true},"indicator_type":{"type":["list","string"],"computed":true},"language":{"type":"string","optional":true},"last_updated_time_utc":{"type":"string","computed":true},"object_marking_refs":{"type":["list","string"],"optional":true},"parsed_pattern":{"type":["list",["object",{"pattern_type_key":"string","pattern_type_values":["list",["object",{"value":"string","value_type":"string"}]]}]],"computed":true},"pattern":{"type":"string","required":true},"pattern_type":{"type":"string","required":true},"pattern_version":{"type":"string","optional":true},"revoked":{"type":"bool","optional":true,"default":false},"source":{"type":"string","required":true},"tags":{"type":["list","string"],"optional":true},"threat_types":{"type":["list","string"],"optional":true},"validate_from_utc":{"type":"string","required":true},"validate_until_utc":{"type":"string","optional":true},"workspace_id":{"type":"string","required":true}},"block_types":{"external_reference":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"hashes":{"type":["map","string"],"optional":true},"id":{"type":"string","computed":true},"source_name":{"type":"string","optional":true},"url":{"type":"string","optional":true}}},"optional":true},"granular_marking":{"nesting_mode":3,"block":{"attributes":{"language":{"type":"string","optional":true},"marking_ref":{"type":"string","optional":true},"selectors":{"type":["list","string"],"optional":true}}},"optional":true},"kill_chain_phase":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_sentinel_watchlist":{"block":{"attributes":{"default_duration":{"type":"string","optional":true},"description":{"type":"string","optional":true},"display_name":{"type":"string","required":true},"item_search_key":{"type":"string","required":true},"labels":{"type":["list","string"],"optional":true},"log_analytics_workspace_id":{"type":"string","required":true},"name":{"type":"string","required":true}}}},"azurerm_sentinel_watchlist_item":{"block":{"attributes":{"name":{"type":"string","optional":true,"computed":true},"properties":{"type":["map","string"],"required":true},"watchlist_id":{"type":"string","required":true}}}},"azurerm_service_fabric_cluster":{"block":{"attributes":{"add_on_features":{"type":["set","string"],"optional":true},"cluster_code_version":{"type":"string","optional":true,"computed":true},"cluster_endpoint":{"type":"string","computed":true},"location":{"type":"string","required":true},"management_endpoint":{"type":"string","required":true},"name":{"type":"string","required":true},"reliability_level":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"service_fabric_zonal_upgrade_mode":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"upgrade_mode":{"type":"string","required":true},"vm_image":{"type":"string","required":true},"vmss_zonal_upgrade_mode":{"type":"string","optional":true}},"block_types":{"azure_active_directory":{"nesting_mode":3,"block":{"attributes":{"client_application_id":{"type":"string","required":true},"cluster_application_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}},"optional":true},"certificate":{"nesting_mode":3,"block":{"attributes":{"thumbprint":{"type":"string","required":true},"thumbprint_secondary":{"type":"string","optional":true},"x509_store_name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["certificate_common_names"]},"certificate_common_names":{"nesting_mode":3,"block":{"attributes":{"x509_store_name":{"type":"string","required":true}},"block_types":{"common_names":{"nesting_mode":4,"block":{"attributes":{"certificate_common_name":{"type":"string","required":true},"certificate_issuer_thumbprint":{"type":"string","optional":true}}},"required":true}}},"optional":true,"conflicts_with":["certificate"]},"client_certificate_common_name":{"nesting_mode":3,"block":{"attributes":{"common_name":{"type":"string","required":true},"is_admin":{"type":"bool","required":true},"issuer_thumbprint":{"type":"string","optional":true}}},"optional":true},"client_certificate_thumbprint":{"nesting_mode":3,"block":{"attributes":{"is_admin":{"type":"bool","required":true},"thumbprint":{"type":"string","required":true}}},"optional":true},"diagnostics_config":{"nesting_mode":3,"block":{"attributes":{"blob_endpoint":{"type":"string","required":true},"protected_account_key_name":{"type":"string","required":true},"queue_endpoint":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"table_endpoint":{"type":"string","required":true}}},"optional":true},"fabric_settings":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true},"node_type":{"nesting_mode":3,"block":{"attributes":{"capacities":{"type":["map","string"],"optional":true},"client_endpoint_port":{"type":"number","required":true},"durability_level":{"type":"string","optional":true,"default":"Bronze"},"http_endpoint_port":{"type":"number","required":true},"instance_count":{"type":"number","required":true},"is_primary":{"type":"bool","required":true},"is_stateless":{"type":"bool","optional":true},"multiple_availability_zones":{"type":"bool","optional":true},"name":{"type":"string","required":true},"placement_properties":{"type":["map","string"],"optional":true},"reverse_proxy_endpoint_port":{"type":"number","optional":true}},"block_types":{"application_ports":{"nesting_mode":3,"block":{"attributes":{"end_port":{"type":"number","required":true},"start_port":{"type":"number","required":true}}},"optional":true,"computed":true},"ephemeral_ports":{"nesting_mode":3,"block":{"attributes":{"end_port":{"type":"number","required":true},"start_port":{"type":"number","required":true}}},"optional":true,"computed":true}}},"required":true},"reverse_proxy_certificate":{"nesting_mode":3,"block":{"attributes":{"thumbprint":{"type":"string","required":true},"thumbprint_secondary":{"type":"string","optional":true},"x509_store_name":{"type":"string","required":true}}},"optional":true,"conflicts_with":["reverse_proxy_certificate_common_names"]},"reverse_proxy_certificate_common_names":{"nesting_mode":3,"block":{"attributes":{"x509_store_name":{"type":"string","required":true}},"block_types":{"common_names":{"nesting_mode":4,"block":{"attributes":{"certificate_common_name":{"type":"string","required":true},"certificate_issuer_thumbprint":{"type":"string","optional":true}}},"required":true}}},"optional":true,"conflicts_with":["reverse_proxy_certificate"]},"upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"force_restart_enabled":{"type":"bool","optional":true},"health_check_retry_timeout":{"type":"string","optional":true,"default":"00:45:00"},"health_check_stable_duration":{"type":"string","optional":true,"default":"00:01:00"},"health_check_wait_duration":{"type":"string","optional":true,"default":"00:00:30"},"upgrade_domain_timeout":{"type":"string","optional":true,"default":"02:00:00"},"upgrade_replica_set_check_timeout":{"type":"string","optional":true,"default":"10675199.02:48:05.4775807"},"upgrade_timeout":{"type":"string","optional":true,"default":"12:00:00"}},"block_types":{"delta_health_policy":{"nesting_mode":3,"block":{"attributes":{"max_delta_unhealthy_applications_percent":{"type":"number","optional":true,"default":0},"max_delta_unhealthy_nodes_percent":{"type":"number","optional":true,"default":0},"max_upgrade_domain_delta_unhealthy_nodes_percent":{"type":"number","optional":true,"default":0}}},"optional":true},"health_policy":{"nesting_mode":3,"block":{"attributes":{"max_unhealthy_applications_percent":{"type":"number","optional":true,"default":0},"max_unhealthy_nodes_percent":{"type":"number","optional":true,"default":0}}},"optional":true}}},"optional":true}}}},"azurerm_service_fabric_managed_cluster":{"block":{"attributes":{"backup_service_enabled":{"type":"bool","optional":true},"client_connection_port":{"type":"number","required":true},"dns_name":{"type":"string","optional":true,"computed":true},"dns_service_enabled":{"type":"bool","optional":true},"http_gateway_port":{"type":"number","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true,"default":"Basic"},"subnet_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"upgrade_wave":{"type":"string","optional":true,"default":"Wave0"},"username":{"type":"string","optional":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"client_application_id":{"type":"string","required":true},"cluster_application_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}},"optional":true},"certificate":{"nesting_mode":3,"block":{"attributes":{"common_name":{"type":"string","optional":true},"thumbprint":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"optional":true},"custom_fabric_setting":{"nesting_mode":3,"block":{"attributes":{"parameter":{"type":"string","required":true},"section":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"lb_rule":{"nesting_mode":3,"block":{"attributes":{"backend_port":{"type":"number","required":true},"frontend_port":{"type":"number","required":true},"probe_protocol":{"type":"string","required":true},"probe_request_path":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"required":true},"node_type":{"nesting_mode":3,"block":{"attributes":{"application_port_range":{"type":"string","required":true},"capacities":{"type":["map","string"],"optional":true},"data_disk_size_gb":{"type":"number","required":true},"data_disk_type":{"type":"string","optional":true,"default":"Standard_LRS"},"ephemeral_port_range":{"type":"string","required":true},"id":{"type":"string","computed":true},"multiple_placement_groups_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"placement_properties":{"type":["map","string"],"optional":true},"primary":{"type":"bool","optional":true},"stateless":{"type":"bool","optional":true},"vm_image_offer":{"type":"string","required":true},"vm_image_publisher":{"type":"string","required":true},"vm_image_sku":{"type":"string","required":true},"vm_image_version":{"type":"string","required":true},"vm_instance_count":{"type":"number","required":true},"vm_size":{"type":"string","required":true}},"block_types":{"vm_secrets":{"nesting_mode":3,"block":{"attributes":{"vault_id":{"type":"string","required":true}},"block_types":{"certificates":{"nesting_mode":3,"block":{"attributes":{"store":{"type":"string","required":true},"url":{"type":"string","required":true}}},"required":true}}},"optional":true}}},"optional":true}}}},"azurerm_service_plan":{"block":{"attributes":{"app_service_environment_id":{"type":"string","optional":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"maximum_elastic_worker_count":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"os_type":{"type":"string","required":true},"per_site_scaling_enabled":{"type":"bool","optional":true,"default":false},"premium_plan_auto_scale_enabled":{"type":"bool","optional":true,"default":false},"reserved":{"type":"bool","computed":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"worker_count":{"type":"number","optional":true,"computed":true},"zone_balancing_enabled":{"type":"bool","optional":true}}}},"azurerm_servicebus_namespace":{"block":{"attributes":{"capacity":{"type":"number","optional":true,"default":0},"default_primary_connection_string":{"type":"string","computed":true},"default_primary_key":{"type":"string","computed":true},"default_secondary_connection_string":{"type":"string","computed":true},"default_secondary_key":{"type":"string","computed":true},"endpoint":{"type":"string","computed":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"name":{"type":"string","required":true},"premium_messaging_partitions":{"type":"number","optional":true,"default":0},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"identity_id":{"type":"string","required":true},"infrastructure_encryption_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_rule_set":{"nesting_mode":3,"block":{"attributes":{"default_action":{"type":"string","optional":true,"default":"Allow"},"ip_rules":{"type":["set","string"],"optional":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"trusted_services_allowed":{"type":"bool","optional":true,"default":false}},"block_types":{"network_rules":{"nesting_mode":4,"block":{"attributes":{"ignore_missing_vnet_service_endpoint":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true}}}},"azurerm_servicebus_namespace_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"namespace_id":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_connection_string_alias":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_servicebus_namespace_customer_managed_key":{"block":{"attributes":{"infrastructure_encryption_enabled":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","required":true},"namespace_id":{"type":"string","required":true}}}},"azurerm_servicebus_namespace_disaster_recovery_config":{"block":{"attributes":{"alias_authorization_rule_id":{"type":"string","optional":true},"default_primary_key":{"type":"string","computed":true},"default_secondary_key":{"type":"string","computed":true},"name":{"type":"string","required":true},"partner_namespace_id":{"type":"string","required":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_namespace_id":{"type":"string","required":true},"secondary_connection_string_alias":{"type":"string","computed":true}}}},"azurerm_servicebus_queue":{"block":{"attributes":{"auto_delete_on_idle":{"type":"string","optional":true,"computed":true},"batched_operations_enabled":{"type":"bool","optional":true,"default":true},"dead_lettering_on_message_expiration":{"type":"bool","optional":true,"default":false},"default_message_ttl":{"type":"string","optional":true,"computed":true},"duplicate_detection_history_time_window":{"type":"string","optional":true,"default":"PT10M"},"express_enabled":{"type":"bool","optional":true,"default":false},"forward_dead_lettered_messages_to":{"type":"string","optional":true},"forward_to":{"type":"string","optional":true},"lock_duration":{"type":"string","optional":true,"default":"PT1M"},"max_delivery_count":{"type":"number","optional":true,"default":10},"max_message_size_in_kilobytes":{"type":"number","optional":true,"computed":true},"max_size_in_megabytes":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"namespace_id":{"type":"string","required":true},"partitioning_enabled":{"type":"bool","optional":true,"default":false},"requires_duplicate_detection":{"type":"bool","optional":true,"default":false},"requires_session":{"type":"bool","optional":true,"default":false},"status":{"type":"string","optional":true,"default":"Active"}}}},"azurerm_servicebus_queue_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"queue_id":{"type":"string","required":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_connection_string_alias":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false}}}},"azurerm_servicebus_subscription":{"block":{"attributes":{"auto_delete_on_idle":{"type":"string","optional":true,"default":"P10675199DT2H48M5.4775807S"},"batched_operations_enabled":{"type":"bool","optional":true},"client_scoped_subscription_enabled":{"type":"bool","optional":true,"default":false},"dead_lettering_on_filter_evaluation_error":{"type":"bool","optional":true,"default":true},"dead_lettering_on_message_expiration":{"type":"bool","optional":true},"default_message_ttl":{"type":"string","optional":true,"default":"P10675199DT2H48M5.4775807S"},"forward_dead_lettered_messages_to":{"type":"string","optional":true},"forward_to":{"type":"string","optional":true},"lock_duration":{"type":"string","optional":true,"default":"PT1M"},"max_delivery_count":{"type":"number","required":true},"name":{"type":"string","required":true},"requires_session":{"type":"bool","optional":true},"status":{"type":"string","optional":true,"default":"Active"},"topic_id":{"type":"string","required":true}},"block_types":{"client_scoped_subscription":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true},"is_client_scoped_subscription_durable":{"type":"bool","computed":true},"is_client_scoped_subscription_shareable":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_servicebus_subscription_rule":{"block":{"attributes":{"action":{"type":"string","optional":true},"filter_type":{"type":"string","required":true},"name":{"type":"string","required":true},"sql_filter":{"type":"string","optional":true},"sql_filter_compatibility_level":{"type":"number","computed":true},"subscription_id":{"type":"string","required":true}},"block_types":{"correlation_filter":{"nesting_mode":3,"block":{"attributes":{"content_type":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"correlation_id":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"label":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"message_id":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"properties":{"type":["map","string"],"optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"reply_to":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"reply_to_session_id":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"session_id":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]},"to":{"type":"string","optional":true,"at_least_one_of":["correlation_filter.0.correlation_id","correlation_filter.0.message_id","correlation_filter.0.to","correlation_filter.0.reply_to","correlation_filter.0.label","correlation_filter.0.session_id","correlation_filter.0.reply_to_session_id","correlation_filter.0.content_type","correlation_filter.0.properties"]}}},"optional":true,"conflicts_with":["sql_filter"]}}}},"azurerm_servicebus_topic":{"block":{"attributes":{"auto_delete_on_idle":{"type":"string","optional":true,"default":"P10675199DT2H48M5.4775807S"},"batched_operations_enabled":{"type":"bool","optional":true},"default_message_ttl":{"type":"string","optional":true,"default":"P10675199DT2H48M5.4775807S"},"duplicate_detection_history_time_window":{"type":"string","optional":true,"default":"PT10M"},"express_enabled":{"type":"bool","optional":true},"max_message_size_in_kilobytes":{"type":"number","optional":true,"computed":true},"max_size_in_megabytes":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"namespace_id":{"type":"string","required":true},"partitioning_enabled":{"type":"bool","optional":true},"requires_duplicate_detection":{"type":"bool","optional":true},"status":{"type":"string","optional":true,"default":"Active"},"support_ordering":{"type":"bool","optional":true}}}},"azurerm_servicebus_topic_authorization_rule":{"block":{"attributes":{"listen":{"type":"bool","optional":true,"default":false},"manage":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"primary_connection_string":{"type":"string","computed":true},"primary_connection_string_alias":{"type":"string","computed":true},"primary_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_connection_string_alias":{"type":"string","computed":true},"secondary_key":{"type":"string","computed":true},"send":{"type":"bool","optional":true,"default":false},"topic_id":{"type":"string","required":true}}}},"azurerm_shared_image":{"block":{"attributes":{"accelerated_network_support_enabled":{"type":"bool","optional":true},"architecture":{"type":"string","optional":true,"default":"x64"},"confidential_vm_enabled":{"type":"bool","optional":true,"conflicts_with":["trusted_launch_supported","trusted_launch_enabled","confidential_vm_supported"]},"confidential_vm_supported":{"type":"bool","optional":true,"conflicts_with":["trusted_launch_supported","trusted_launch_enabled","confidential_vm_enabled"]},"description":{"type":"string","optional":true},"disk_controller_type_nvme_enabled":{"type":"bool","optional":true},"disk_types_not_allowed":{"type":["set","string"],"optional":true},"end_of_life_date":{"type":"string","optional":true},"eula":{"type":"string","optional":true},"gallery_name":{"type":"string","required":true},"hibernation_enabled":{"type":"bool","optional":true},"hyper_v_generation":{"type":"string","optional":true,"default":"V1"},"location":{"type":"string","required":true},"max_recommended_memory_in_gb":{"type":"number","optional":true},"max_recommended_vcpu_count":{"type":"number","optional":true},"min_recommended_memory_in_gb":{"type":"number","optional":true},"min_recommended_vcpu_count":{"type":"number","optional":true},"name":{"type":"string","required":true},"os_type":{"type":"string","required":true},"privacy_statement_uri":{"type":"string","optional":true},"release_note_uri":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"specialized":{"type":"bool","optional":true},"tags":{"type":["map","string"],"optional":true},"trusted_launch_enabled":{"type":"bool","optional":true,"conflicts_with":["trusted_launch_supported","confidential_vm_supported","confidential_vm_enabled"]},"trusted_launch_supported":{"type":"bool","optional":true,"conflicts_with":["trusted_launch_enabled","confidential_vm_supported","confidential_vm_enabled"]}},"block_types":{"identifier":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true}}},"required":true},"purchase_plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","optional":true},"publisher":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_shared_image_gallery":{"block":{"attributes":{"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"unique_name":{"type":"string","computed":true}},"block_types":{"sharing":{"nesting_mode":3,"block":{"attributes":{"permission":{"type":"string","required":true}},"block_types":{"community_gallery":{"nesting_mode":3,"block":{"attributes":{"eula":{"type":"string","required":true},"name":{"type":"string","computed":true},"prefix":{"type":"string","required":true},"publisher_email":{"type":"string","required":true},"publisher_uri":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_shared_image_version":{"block":{"attributes":{"blob_uri":{"type":"string","optional":true,"exactly_one_of":["blob_uri","os_disk_snapshot_id","managed_image_id"],"required_with":["storage_account_id"]},"deletion_of_replicated_locations_enabled":{"type":"bool","optional":true,"default":false},"end_of_life_date":{"type":"string","optional":true},"exclude_from_latest":{"type":"bool","optional":true,"default":false},"gallery_name":{"type":"string","required":true},"image_name":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_image_id":{"type":"string","optional":true,"exactly_one_of":["blob_uri","os_disk_snapshot_id","managed_image_id"]},"name":{"type":"string","required":true},"os_disk_snapshot_id":{"type":"string","optional":true,"exactly_one_of":["blob_uri","os_disk_snapshot_id","managed_image_id"]},"replication_mode":{"type":"string","optional":true,"default":"Full"},"resource_group_name":{"type":"string","required":true},"storage_account_id":{"type":"string","optional":true,"required_with":["blob_uri"]},"tags":{"type":["map","string"],"optional":true}},"block_types":{"target_region":{"nesting_mode":3,"block":{"attributes":{"disk_encryption_set_id":{"type":"string","optional":true},"exclude_from_latest_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"regional_replica_count":{"type":"number","required":true},"storage_account_type":{"type":"string","optional":true,"default":"Standard_LRS"}}},"required":true}}}},"azurerm_signalr_service":{"block":{"attributes":{"aad_auth_enabled":{"type":"bool","optional":true,"default":true},"connectivity_logs_enabled":{"type":"bool","optional":true,"default":false},"hostname":{"type":"string","computed":true},"http_request_logs_enabled":{"type":"bool","optional":true,"default":false},"ip_address":{"type":"string","computed":true},"live_trace_enabled":{"type":"bool","optional":true,"default":false},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"messaging_logs_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"public_port":{"type":"number","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"server_port":{"type":"number","computed":true},"serverless_connection_timeout_in_seconds":{"type":"number","optional":true,"default":30},"service_mode":{"type":"string","optional":true,"default":"Default"},"tags":{"type":["map","string"],"optional":true},"tls_client_cert_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"required":true}}},"optional":true,"computed":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"live_trace":{"nesting_mode":3,"block":{"attributes":{"connectivity_logs_enabled":{"type":"bool","optional":true,"default":true},"enabled":{"type":"bool","optional":true,"default":true},"http_request_logs_enabled":{"type":"bool","optional":true,"default":true},"messaging_logs_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"name":{"type":"string","required":true}}},"required":true},"upstream_endpoint":{"nesting_mode":4,"block":{"attributes":{"category_pattern":{"type":["list","string"],"required":true},"event_pattern":{"type":["list","string"],"required":true},"hub_pattern":{"type":["list","string"],"required":true},"url_template":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_signalr_service_custom_certificate":{"block":{"attributes":{"certificate_version":{"type":"string","computed":true},"custom_certificate_id":{"type":"string","required":true},"name":{"type":"string","required":true},"signalr_service_id":{"type":"string","required":true}}}},"azurerm_signalr_service_custom_domain":{"block":{"attributes":{"domain_name":{"type":"string","required":true},"name":{"type":"string","required":true},"signalr_custom_certificate_id":{"type":"string","required":true},"signalr_service_id":{"type":"string","required":true}}}},"azurerm_signalr_service_network_acl":{"block":{"attributes":{"default_action":{"type":"string","required":true},"signalr_service_id":{"type":"string","required":true}},"block_types":{"private_endpoint":{"nesting_mode":4,"block":{"attributes":{"allowed_request_types":{"type":["set","string"],"optional":true},"denied_request_types":{"type":["set","string"],"optional":true},"id":{"type":"string","required":true}}},"optional":true},"public_network":{"nesting_mode":3,"block":{"attributes":{"allowed_request_types":{"type":["set","string"],"optional":true,"conflicts_with":["public_network.0.denied_request_types"]},"denied_request_types":{"type":["set","string"],"optional":true,"conflicts_with":["public_network.0.allowed_request_types"]}}},"required":true}}}},"azurerm_signalr_shared_private_link_resource":{"block":{"attributes":{"name":{"type":"string","required":true},"request_message":{"type":"string","optional":true},"signalr_service_id":{"type":"string","required":true},"status":{"type":"string","computed":true},"sub_resource_name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_site_recovery_fabric":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_site_recovery_hyperv_network_mapping":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_id":{"type":"string","required":true},"source_network_name":{"type":"string","required":true},"source_system_center_virtual_machine_manager_name":{"type":"string","required":true},"target_network_id":{"type":"string","required":true}}}},"azurerm_site_recovery_hyperv_replication_policy":{"block":{"attributes":{"application_consistent_snapshot_frequency_in_hours":{"type":"number","required":true},"name":{"type":"string","required":true},"recovery_point_retention_in_hours":{"type":"number","required":true},"recovery_vault_id":{"type":"string","required":true},"replication_interval_in_seconds":{"type":"number","required":true}}}},"azurerm_site_recovery_hyperv_replication_policy_association":{"block":{"attributes":{"hyperv_site_id":{"type":"string","required":true},"name":{"type":"string","required":true},"policy_id":{"type":"string","required":true}}}},"azurerm_site_recovery_network_mapping":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_network_id":{"type":"string","required":true},"source_recovery_fabric_name":{"type":"string","required":true},"target_network_id":{"type":"string","required":true},"target_recovery_fabric_name":{"type":"string","required":true}}}},"azurerm_site_recovery_protection_container":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_fabric_name":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_site_recovery_protection_container_mapping":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_fabric_name":{"type":"string","required":true},"recovery_replication_policy_id":{"type":"string","required":true},"recovery_source_protection_container_name":{"type":"string","required":true},"recovery_target_protection_container_id":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}},"block_types":{"automatic_update":{"nesting_mode":3,"block":{"attributes":{"authentication_type":{"type":"string","optional":true,"default":"SystemAssignedIdentity"},"automation_account_id":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_site_recovery_replicated_vm":{"block":{"attributes":{"managed_disk":{"type":["set",["object",{"disk_id":"string","staging_storage_account_id":"string","target_disk_encryption":["list",["object",{"disk_encryption_key":["list",["object",{"secret_url":"string","vault_id":"string"}]],"key_encryption_key":["list",["object",{"key_url":"string","vault_id":"string"}]]}]],"target_disk_encryption_set_id":"string","target_disk_type":"string","target_replica_disk_type":"string","target_resource_group_id":"string"}]],"optional":true,"computed":true},"multi_vm_group_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"network_interface":{"type":["set",["object",{"failover_test_public_ip_address_id":"string","failover_test_static_ip":"string","failover_test_subnet_name":"string","recovery_load_balancer_backend_address_pool_ids":["set","string"],"recovery_public_ip_address_id":"string","source_network_interface_id":"string","target_static_ip":"string","target_subnet_name":"string"}]],"optional":true,"computed":true},"recovery_replication_policy_id":{"type":"string","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_recovery_fabric_name":{"type":"string","required":true},"source_recovery_protection_container_name":{"type":"string","required":true},"source_vm_id":{"type":"string","required":true},"target_availability_set_id":{"type":"string","optional":true,"conflicts_with":["target_zone"]},"target_boot_diagnostic_storage_account_id":{"type":"string","optional":true},"target_capacity_reservation_group_id":{"type":"string","optional":true},"target_edge_zone":{"type":"string","optional":true},"target_network_id":{"type":"string","optional":true,"computed":true},"target_proximity_placement_group_id":{"type":"string","optional":true},"target_recovery_fabric_id":{"type":"string","required":true},"target_recovery_protection_container_id":{"type":"string","required":true},"target_resource_group_id":{"type":"string","required":true},"target_virtual_machine_scale_set_id":{"type":"string","optional":true},"target_virtual_machine_size":{"type":"string","optional":true,"computed":true},"target_zone":{"type":"string","optional":true},"test_network_id":{"type":"string","optional":true,"computed":true},"unmanaged_disk":{"type":["set",["object",{"disk_uri":"string","staging_storage_account_id":"string","target_storage_account_id":"string"}]],"optional":true,"computed":true}}}},"azurerm_site_recovery_replication_policy":{"block":{"attributes":{"application_consistent_snapshot_frequency_in_minutes":{"type":"number","required":true},"name":{"type":"string","required":true},"recovery_point_retention_in_minutes":{"type":"number","required":true},"recovery_vault_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true}}}},"azurerm_site_recovery_replication_recovery_plan":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_id":{"type":"string","required":true},"source_recovery_fabric_id":{"type":"string","required":true},"target_recovery_fabric_id":{"type":"string","required":true}},"block_types":{"azure_to_azure_settings":{"nesting_mode":3,"block":{"attributes":{"primary_edge_zone":{"type":"string","optional":true,"required_with":["azure_to_azure_settings.0.recovery_edge_zone"]},"primary_zone":{"type":"string","optional":true,"required_with":["azure_to_azure_settings.0.recovery_zone"]},"recovery_edge_zone":{"type":"string","optional":true,"required_with":["azure_to_azure_settings.0.primary_edge_zone"]},"recovery_zone":{"type":"string","optional":true,"required_with":["azure_to_azure_settings.0.primary_zone"]}}},"optional":true},"boot_recovery_group":{"nesting_mode":3,"block":{"attributes":{"replicated_protected_items":{"type":["list","string"],"optional":true}},"block_types":{"post_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true},"pre_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true}}},"required":true},"failover_recovery_group":{"nesting_mode":3,"block":{"block_types":{"post_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true},"pre_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true}}},"required":true},"shutdown_recovery_group":{"nesting_mode":3,"block":{"block_types":{"post_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true},"pre_action":{"nesting_mode":3,"block":{"attributes":{"fabric_location":{"type":"string","optional":true},"fail_over_directions":{"type":["set","string"],"required":true},"fail_over_types":{"type":["set","string"],"required":true},"manual_action_instruction":{"type":"string","optional":true},"name":{"type":"string","required":true},"runbook_id":{"type":"string","optional":true},"script_path":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_site_recovery_services_vault_hyperv_site":{"block":{"attributes":{"name":{"type":"string","required":true},"recovery_vault_id":{"type":"string","required":true}}}},"azurerm_site_recovery_vmware_replicated_vm":{"block":{"attributes":{"appliance_name":{"type":"string","required":true},"default_log_storage_account_id":{"type":"string","optional":true,"exactly_one_of":["managed_disk","default_log_storage_account_id"]},"default_recovery_disk_type":{"type":"string","optional":true,"exactly_one_of":["managed_disk","default_recovery_disk_type"]},"default_target_disk_encryption_set_id":{"type":"string","optional":true},"license_type":{"type":"string","optional":true,"default":"NotSpecified"},"multi_vm_group_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"physical_server_credential_name":{"type":"string","required":true},"recovery_replication_policy_id":{"type":"string","required":true},"recovery_vault_id":{"type":"string","required":true},"source_vm_name":{"type":"string","required":true},"target_availability_set_id":{"type":"string","optional":true,"conflicts_with":["target_zone"]},"target_boot_diagnostics_storage_account_id":{"type":"string","optional":true},"target_network_id":{"type":"string","optional":true,"required_with":["network_interface"]},"target_proximity_placement_group_id":{"type":"string","optional":true},"target_resource_group_id":{"type":"string","required":true},"target_vm_name":{"type":"string","required":true},"target_vm_size":{"type":"string","optional":true},"target_zone":{"type":"string","optional":true,"conflicts_with":["target_availability_set_id"]},"test_network_id":{"type":"string","optional":true}},"block_types":{"managed_disk":{"nesting_mode":3,"block":{"attributes":{"disk_id":{"type":"string","required":true},"log_storage_account_id":{"type":"string","optional":true},"target_disk_encryption_set_id":{"type":"string","optional":true},"target_disk_type":{"type":"string","required":true}}},"optional":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"is_primary":{"type":"bool","required":true},"source_mac_address":{"type":"string","required":true},"target_static_ip":{"type":"string","optional":true},"target_subnet_name":{"type":"string","optional":true},"test_subnet_name":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_site_recovery_vmware_replication_policy":{"block":{"attributes":{"application_consistent_snapshot_frequency_in_minutes":{"type":"number","required":true},"name":{"type":"string","required":true},"recovery_point_retention_in_minutes":{"type":"number","required":true},"recovery_vault_id":{"type":"string","required":true}}}},"azurerm_site_recovery_vmware_replication_policy_association":{"block":{"attributes":{"name":{"type":"string","required":true},"policy_id":{"type":"string","required":true},"recovery_vault_id":{"type":"string","required":true}}}},"azurerm_snapshot":{"block":{"attributes":{"create_option":{"type":"string","required":true},"disk_access_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"incremental_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_access_policy":{"type":"string","optional":true,"default":"AllowAll"},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"source_resource_id":{"type":"string","optional":true},"source_uri":{"type":"string","optional":true},"storage_account_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"trusted_launch_enabled":{"type":"bool","computed":true}},"block_types":{"encryption_settings":{"nesting_mode":3,"block":{"block_types":{"disk_encryption_key":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"required":true},"key_encryption_key":{"nesting_mode":3,"block":{"attributes":{"key_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_source_control_token":{"block":{"attributes":{"token":{"type":"string","required":true},"token_secret":{"type":"string","optional":true},"type":{"type":"string","required":true}}}},"azurerm_spring_cloud_accelerator":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_active_deployment":{"block":{"attributes":{"deployment_name":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_api_portal":{"block":{"attributes":{"api_try_out_enabled":{"type":"bool","optional":true},"gateway_ids":{"type":["set","string"],"optional":true},"https_only_enabled":{"type":"bool","optional":true},"instance_count":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true},"spring_cloud_service_id":{"type":"string","required":true},"url":{"type":"string","computed":true}},"block_types":{"sso":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true},"client_secret":{"type":"string","optional":true},"issuer_uri":{"type":"string","optional":true},"scope":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_spring_cloud_api_portal_custom_domain":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_api_portal_id":{"type":"string","required":true},"thumbprint":{"type":"string","optional":true}}}},"azurerm_spring_cloud_app":{"block":{"attributes":{"addon_json":{"type":"string","optional":true,"computed":true},"fqdn":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"is_public":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"public_endpoint_enabled":{"type":"bool","optional":true},"resource_group_name":{"type":"string","required":true},"service_name":{"type":"string","required":true},"tls_enabled":{"type":"bool","optional":true,"default":false},"url":{"type":"string","computed":true}},"block_types":{"custom_persistent_disk":{"nesting_mode":3,"block":{"attributes":{"mount_options":{"type":["set","string"],"optional":true},"mount_path":{"type":"string","required":true},"read_only_enabled":{"type":"bool","optional":true,"default":false},"share_name":{"type":"string","required":true},"storage_name":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"ingress_settings":{"nesting_mode":3,"block":{"attributes":{"backend_protocol":{"type":"string","optional":true,"default":"Default"},"read_timeout_in_seconds":{"type":"number","optional":true,"default":300},"send_timeout_in_seconds":{"type":"number","optional":true,"default":60},"session_affinity":{"type":"string","optional":true,"default":"None"},"session_cookie_max_age":{"type":"number","optional":true}}},"optional":true,"computed":true},"persistent_disk":{"nesting_mode":3,"block":{"attributes":{"mount_path":{"type":"string","optional":true,"default":"/persistent"},"size_in_gb":{"type":"number","required":true}}},"optional":true,"computed":true}}}},"azurerm_spring_cloud_app_cosmosdb_association":{"block":{"attributes":{"api_type":{"type":"string","required":true},"cosmosdb_access_key":{"type":"string","required":true},"cosmosdb_account_id":{"type":"string","required":true},"cosmosdb_cassandra_keyspace_name":{"type":"string","optional":true,"conflicts_with":["cosmosdb_gremlin_database_name","cosmosdb_gremlin_graph_name","cosmosdb_mongo_database_name","cosmosdb_sql_database_name"]},"cosmosdb_gremlin_database_name":{"type":"string","optional":true,"conflicts_with":["cosmosdb_cassandra_keyspace_name","cosmosdb_mongo_database_name","cosmosdb_sql_database_name"],"required_with":["cosmosdb_gremlin_graph_name"]},"cosmosdb_gremlin_graph_name":{"type":"string","optional":true,"conflicts_with":["cosmosdb_cassandra_keyspace_name","cosmosdb_mongo_database_name","cosmosdb_sql_database_name"],"required_with":["cosmosdb_gremlin_database_name"]},"cosmosdb_mongo_database_name":{"type":"string","optional":true,"conflicts_with":["cosmosdb_cassandra_keyspace_name","cosmosdb_gremlin_database_name","cosmosdb_gremlin_graph_name","cosmosdb_sql_database_name"]},"cosmosdb_sql_database_name":{"type":"string","optional":true,"conflicts_with":["cosmosdb_cassandra_keyspace_name","cosmosdb_gremlin_database_name","cosmosdb_gremlin_graph_name","cosmosdb_mongo_database_name"]},"name":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_app_dynamics_application_performance_monitoring":{"block":{"attributes":{"agent_account_access_key":{"type":"string","required":true},"agent_account_name":{"type":"string","required":true},"agent_application_name":{"type":"string","optional":true},"agent_node_name":{"type":"string","optional":true},"agent_tier_name":{"type":"string","optional":true},"agent_unique_host_id":{"type":"string","optional":true},"controller_host_name":{"type":"string","required":true},"controller_port":{"type":"number","optional":true},"controller_ssl_enabled":{"type":"bool","optional":true},"globally_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_app_mysql_association":{"block":{"attributes":{"database_name":{"type":"string","required":true},"mysql_server_id":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true},"username":{"type":"string","required":true}}}},"azurerm_spring_cloud_app_redis_association":{"block":{"attributes":{"name":{"type":"string","required":true},"redis_access_key":{"type":"string","required":true},"redis_cache_id":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true},"ssl_enabled":{"type":"bool","optional":true,"default":true}}}},"azurerm_spring_cloud_application_insights_application_performance_monitoring":{"block":{"attributes":{"connection_string":{"type":"string","optional":true},"globally_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"role_instance":{"type":"string","optional":true},"role_name":{"type":"string","optional":true},"sampling_percentage":{"type":"number","optional":true},"sampling_requests_per_second":{"type":"number","optional":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_application_live_view":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_build_deployment":{"block":{"attributes":{"addon_json":{"type":"string","optional":true,"computed":true},"application_performance_monitoring_ids":{"type":["list","string"],"optional":true},"build_result_id":{"type":"string","required":true},"environment_variables":{"type":["map","string"],"optional":true},"instance_count":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true}},"block_types":{"quota":{"nesting_mode":3,"block":{"attributes":{"cpu":{"type":"string","optional":true,"computed":true},"memory":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_spring_cloud_build_pack_binding":{"block":{"attributes":{"binding_type":{"type":"string","optional":true},"name":{"type":"string","required":true},"spring_cloud_builder_id":{"type":"string","required":true}},"block_types":{"launch":{"nesting_mode":3,"block":{"attributes":{"properties":{"type":["map","string"],"optional":true},"secrets":{"type":["map","string"],"optional":true}}},"optional":true}}}},"azurerm_spring_cloud_builder":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}},"block_types":{"build_pack_group":{"nesting_mode":4,"block":{"attributes":{"build_pack_ids":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true}}},"required":true},"stack":{"nesting_mode":3,"block":{"attributes":{"id":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true}}}},"azurerm_spring_cloud_certificate":{"block":{"attributes":{"certificate_content":{"type":"string","optional":true,"at_least_one_of":["key_vault_certificate_id","certificate_content"]},"exclude_private_key":{"type":"bool","optional":true},"key_vault_certificate_id":{"type":"string","optional":true,"at_least_one_of":["key_vault_certificate_id","certificate_content"]},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"service_name":{"type":"string","required":true},"thumbprint":{"type":"string","computed":true}}}},"azurerm_spring_cloud_configuration_service":{"block":{"attributes":{"generation":{"type":"string","optional":true},"name":{"type":"string","required":true},"refresh_interval_in_seconds":{"type":"number","optional":true},"spring_cloud_service_id":{"type":"string","required":true}},"block_types":{"repository":{"nesting_mode":3,"block":{"attributes":{"ca_certificate_id":{"type":"string","optional":true},"host_key":{"type":"string","optional":true},"host_key_algorithm":{"type":"string","optional":true},"label":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"patterns":{"type":["set","string"],"required":true},"private_key":{"type":"string","optional":true},"search_paths":{"type":["set","string"],"optional":true},"strict_host_key_checking":{"type":"bool","optional":true},"uri":{"type":"string","required":true},"username":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_spring_cloud_connection":{"block":{"attributes":{"client_type":{"type":"string","optional":true,"default":"none"},"name":{"type":"string","required":true},"spring_cloud_id":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"vnet_solution":{"type":"string","optional":true}},"block_types":{"authentication":{"nesting_mode":3,"block":{"attributes":{"certificate":{"type":"string","optional":true},"client_id":{"type":"string","optional":true},"name":{"type":"string","optional":true},"principal_id":{"type":"string","optional":true},"secret":{"type":"string","optional":true},"subscription_id":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true},"secret_store":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}}},"optional":true}}}},"azurerm_spring_cloud_container_deployment":{"block":{"attributes":{"addon_json":{"type":"string","optional":true,"computed":true},"application_performance_monitoring_ids":{"type":["list","string"],"optional":true},"arguments":{"type":["list","string"],"optional":true},"commands":{"type":["list","string"],"optional":true},"environment_variables":{"type":["map","string"],"optional":true},"image":{"type":"string","required":true},"instance_count":{"type":"number","optional":true,"default":1},"language_framework":{"type":"string","optional":true},"name":{"type":"string","required":true},"server":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true}},"block_types":{"quota":{"nesting_mode":3,"block":{"attributes":{"cpu":{"type":"string","optional":true,"computed":true},"memory":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_spring_cloud_custom_domain":{"block":{"attributes":{"certificate_name":{"type":"string","optional":true,"required_with":["thumbprint"]},"name":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","required":true},"thumbprint":{"type":"string","optional":true,"required_with":["certificate_name"]}}}},"azurerm_spring_cloud_customized_accelerator":{"block":{"attributes":{"accelerator_tags":{"type":["list","string"],"optional":true},"accelerator_type":{"type":"string","optional":true,"default":"Accelerator"},"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"icon_url":{"type":"string","optional":true},"name":{"type":"string","required":true},"spring_cloud_accelerator_id":{"type":"string","required":true}},"block_types":{"git_repository":{"nesting_mode":3,"block":{"attributes":{"branch":{"type":"string","optional":true,"exactly_one_of":["git_repository.0.branch","git_repository.0.commit","git_repository.0.git_tag"]},"ca_certificate_id":{"type":"string","optional":true},"commit":{"type":"string","optional":true,"exactly_one_of":["git_repository.0.branch","git_repository.0.commit","git_repository.0.git_tag"]},"git_tag":{"type":"string","optional":true,"exactly_one_of":["git_repository.0.branch","git_repository.0.commit","git_repository.0.git_tag"]},"interval_in_seconds":{"type":"number","optional":true},"path":{"type":"string","optional":true},"url":{"type":"string","required":true}},"block_types":{"basic_auth":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true,"conflicts_with":["git_repository.0.ssh_auth"]},"ssh_auth":{"nesting_mode":3,"block":{"attributes":{"host_key":{"type":"string","optional":true},"host_key_algorithm":{"type":"string","optional":true},"private_key":{"type":"string","required":true}}},"optional":true,"conflicts_with":["git_repository.0.basic_auth"]}}},"required":true}}}},"azurerm_spring_cloud_dev_tool_portal":{"block":{"attributes":{"application_accelerator_enabled":{"type":"bool","optional":true,"computed":true},"application_live_view_enabled":{"type":"bool","optional":true,"computed":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true},"spring_cloud_service_id":{"type":"string","required":true}},"block_types":{"sso":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true},"client_secret":{"type":"string","optional":true},"metadata_url":{"type":"string","optional":true},"scope":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_spring_cloud_dynatrace_application_performance_monitoring":{"block":{"attributes":{"api_token":{"type":"string","optional":true},"api_url":{"type":"string","optional":true},"connection_point":{"type":"string","required":true},"environment_id":{"type":"string","optional":true},"globally_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true},"tenant":{"type":"string","required":true},"tenant_token":{"type":"string","required":true}}}},"azurerm_spring_cloud_elastic_application_performance_monitoring":{"block":{"attributes":{"application_packages":{"type":["list","string"],"required":true},"globally_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"server_url":{"type":"string","required":true},"service_name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_gateway":{"block":{"attributes":{"application_performance_monitoring_ids":{"type":["list","string"],"optional":true},"application_performance_monitoring_types":{"type":["list","string"],"optional":true},"environment_variables":{"type":["map","string"],"optional":true},"https_only":{"type":"bool","optional":true},"instance_count":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true},"sensitive_environment_variables":{"type":["map","string"],"optional":true},"spring_cloud_service_id":{"type":"string","required":true},"url":{"type":"string","computed":true}},"block_types":{"api_metadata":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"documentation_url":{"type":"string","optional":true},"server_url":{"type":"string","optional":true},"title":{"type":"string","optional":true},"version":{"type":"string","optional":true}}},"optional":true},"client_authorization":{"nesting_mode":3,"block":{"attributes":{"certificate_ids":{"type":["list","string"],"optional":true},"verification_enabled":{"type":"bool","optional":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["set","string"],"optional":true},"allowed_methods":{"type":["set","string"],"optional":true},"allowed_origin_patterns":{"type":["set","string"],"optional":true},"allowed_origins":{"type":["set","string"],"optional":true},"credentials_allowed":{"type":"bool","optional":true},"exposed_headers":{"type":["set","string"],"optional":true},"max_age_seconds":{"type":"number","optional":true}}},"optional":true},"local_response_cache_per_instance":{"nesting_mode":3,"block":{"attributes":{"size":{"type":"string","optional":true},"time_to_live":{"type":"string","optional":true}}},"optional":true,"conflicts_with":["local_response_cache_per_route"]},"local_response_cache_per_route":{"nesting_mode":3,"block":{"attributes":{"size":{"type":"string","optional":true},"time_to_live":{"type":"string","optional":true}}},"optional":true,"conflicts_with":["local_response_cache_per_instance"]},"quota":{"nesting_mode":3,"block":{"attributes":{"cpu":{"type":"string","optional":true,"default":"1"},"memory":{"type":"string","optional":true,"default":"2Gi"}}},"optional":true,"computed":true},"sso":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true},"client_secret":{"type":"string","optional":true},"issuer_uri":{"type":"string","optional":true},"scope":{"type":["set","string"],"optional":true}}},"optional":true}}}},"azurerm_spring_cloud_gateway_custom_domain":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_gateway_id":{"type":"string","required":true},"thumbprint":{"type":"string","optional":true}}}},"azurerm_spring_cloud_gateway_route_config":{"block":{"attributes":{"filters":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"predicates":{"type":["set","string"],"optional":true},"protocol":{"type":"string","required":true},"spring_cloud_app_id":{"type":"string","optional":true},"spring_cloud_gateway_id":{"type":"string","required":true},"sso_validation_enabled":{"type":"bool","optional":true}},"block_types":{"open_api":{"nesting_mode":3,"block":{"attributes":{"uri":{"type":"string","optional":true}}},"optional":true},"route":{"nesting_mode":4,"block":{"attributes":{"classification_tags":{"type":["set","string"],"optional":true},"description":{"type":"string","optional":true},"filters":{"type":["set","string"],"optional":true},"order":{"type":"number","required":true},"predicates":{"type":["set","string"],"optional":true},"sso_validation_enabled":{"type":"bool","optional":true},"title":{"type":"string","optional":true},"token_relay":{"type":"bool","optional":true},"uri":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_spring_cloud_java_deployment":{"block":{"attributes":{"environment_variables":{"type":["map","string"],"optional":true},"instance_count":{"type":"number","optional":true,"default":1},"jvm_options":{"type":"string","optional":true},"name":{"type":"string","required":true},"runtime_version":{"type":"string","optional":true,"default":"Java_8"},"spring_cloud_app_id":{"type":"string","required":true}},"block_types":{"quota":{"nesting_mode":3,"block":{"attributes":{"cpu":{"type":"string","optional":true,"computed":true},"memory":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_spring_cloud_new_relic_application_performance_monitoring":{"block":{"attributes":{"agent_enabled":{"type":"bool","optional":true,"default":true},"app_name":{"type":"string","required":true},"app_server_port":{"type":"number","optional":true},"audit_mode_enabled":{"type":"bool","optional":true},"auto_app_naming_enabled":{"type":"bool","optional":true},"auto_transaction_naming_enabled":{"type":"bool","optional":true,"default":true},"custom_tracing_enabled":{"type":"bool","optional":true,"default":true},"globally_enabled":{"type":"bool","optional":true},"labels":{"type":["map","string"],"optional":true},"license_key":{"type":"string","required":true},"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true}}}},"azurerm_spring_cloud_service":{"block":{"attributes":{"build_agent_pool_size":{"type":"string","optional":true},"location":{"type":"string","required":true},"log_stream_public_endpoint_enabled":{"type":"bool","optional":true},"managed_environment_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"outbound_public_ip_addresses":{"type":["list","string"],"computed":true},"required_network_traffic_rules":{"type":["list",["object",{"direction":"string","fqdns":["list","string"],"ip_addresses":["list","string"],"port":"number","protocol":"string"}]],"computed":true},"resource_group_name":{"type":"string","required":true},"service_registry_enabled":{"type":"bool","optional":true},"service_registry_id":{"type":"string","computed":true},"sku_name":{"type":"string","optional":true,"default":"S0"},"sku_tier":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"zone_redundant":{"type":"bool","optional":true,"default":false}},"block_types":{"config_server_git_setting":{"nesting_mode":3,"block":{"attributes":{"label":{"type":"string","optional":true},"search_paths":{"type":["list","string"],"optional":true},"uri":{"type":"string","required":true}},"block_types":{"http_basic_auth":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true,"conflicts_with":["config_server_git_setting.0.ssh_auth"]},"repository":{"nesting_mode":3,"block":{"attributes":{"label":{"type":"string","optional":true},"name":{"type":"string","required":true},"pattern":{"type":["list","string"],"optional":true},"search_paths":{"type":["list","string"],"optional":true},"uri":{"type":"string","required":true}},"block_types":{"http_basic_auth":{"nesting_mode":3,"block":{"attributes":{"password":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"ssh_auth":{"nesting_mode":3,"block":{"attributes":{"host_key":{"type":"string","optional":true},"host_key_algorithm":{"type":"string","optional":true},"private_key":{"type":"string","required":true},"strict_host_key_checking_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}},"optional":true},"ssh_auth":{"nesting_mode":3,"block":{"attributes":{"host_key":{"type":"string","optional":true},"host_key_algorithm":{"type":"string","optional":true},"private_key":{"type":"string","required":true},"strict_host_key_checking_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true,"conflicts_with":["config_server_git_setting.0.http_basic_auth"]}}},"optional":true},"container_registry":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"password":{"type":"string","required":true},"server":{"type":"string","required":true},"username":{"type":"string","required":true}}},"optional":true},"default_build_service":{"nesting_mode":3,"block":{"attributes":{"container_registry_name":{"type":"string","optional":true}}},"optional":true},"marketplace":{"nesting_mode":3,"block":{"attributes":{"plan":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true,"computed":true},"network":{"nesting_mode":3,"block":{"attributes":{"app_network_resource_group":{"type":"string","optional":true,"computed":true},"app_subnet_id":{"type":"string","required":true},"cidr_ranges":{"type":["list","string"],"required":true},"outbound_type":{"type":"string","optional":true,"default":"loadBalancer"},"read_timeout_seconds":{"type":"number","optional":true},"service_runtime_network_resource_group":{"type":"string","optional":true,"computed":true},"service_runtime_subnet_id":{"type":"string","required":true}}},"optional":true},"trace":{"nesting_mode":3,"block":{"attributes":{"connection_string":{"type":"string","optional":true},"sample_rate":{"type":"number","optional":true,"default":10}}},"optional":true}}}},"azurerm_spring_cloud_storage":{"block":{"attributes":{"name":{"type":"string","required":true},"spring_cloud_service_id":{"type":"string","required":true},"storage_account_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true}}}},"azurerm_ssh_public_key":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_key":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_stack_hci_cluster":{"block":{"attributes":{"automanage_configuration_id":{"type":"string","optional":true},"client_id":{"type":"string","optional":true},"cloud_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"resource_provider_object_id":{"type":"string","computed":true},"service_endpoint":{"type":"string","computed":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","optional":true,"computed":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_stack_hci_deployment_setting":{"block":{"attributes":{"arc_resource_ids":{"type":["list","string"],"required":true},"stack_hci_cluster_id":{"type":"string","required":true},"version":{"type":"string","required":true}},"block_types":{"scale_unit":{"nesting_mode":3,"block":{"attributes":{"active_directory_organizational_unit_path":{"type":"string","required":true},"bitlocker_boot_volume_enabled":{"type":"bool","optional":true,"default":true},"bitlocker_data_volume_enabled":{"type":"bool","optional":true,"default":true},"credential_guard_enabled":{"type":"bool","optional":true,"default":false},"domain_fqdn":{"type":"string","required":true},"drift_control_enabled":{"type":"bool","optional":true,"default":true},"drtm_protection_enabled":{"type":"bool","optional":true,"default":true},"episodic_data_upload_enabled":{"type":"bool","optional":true,"default":true},"eu_location_enabled":{"type":"bool","optional":true,"default":false},"hvci_protection_enabled":{"type":"bool","optional":true,"default":true},"name_prefix":{"type":"string","required":true},"secrets_location":{"type":"string","required":true},"side_channel_mitigation_enabled":{"type":"bool","optional":true,"default":true},"smb_cluster_encryption_enabled":{"type":"bool","optional":true,"default":false},"smb_signing_enabled":{"type":"bool","optional":true,"default":true},"streaming_data_client_enabled":{"type":"bool","optional":true,"default":true},"wdac_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"cluster":{"nesting_mode":3,"block":{"attributes":{"azure_service_endpoint":{"type":"string","required":true},"cloud_account_name":{"type":"string","required":true},"name":{"type":"string","required":true},"witness_path":{"type":"string","required":true},"witness_type":{"type":"string","required":true}}},"required":true},"host_network":{"nesting_mode":3,"block":{"attributes":{"storage_auto_ip_enabled":{"type":"bool","optional":true,"default":true},"storage_connectivity_switchless_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"intent":{"nesting_mode":3,"block":{"attributes":{"adapter":{"type":["list","string"],"required":true},"adapter_property_override_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"qos_policy_override_enabled":{"type":"bool","optional":true,"default":false},"traffic_type":{"type":["list","string"],"required":true},"virtual_switch_configuration_override_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"adapter_property_override":{"nesting_mode":3,"block":{"attributes":{"jumbo_packet":{"type":"string","optional":true},"network_direct":{"type":"string","optional":true},"network_direct_technology":{"type":"string","optional":true}}},"optional":true},"qos_policy_override":{"nesting_mode":3,"block":{"attributes":{"bandwidth_percentage_smb":{"type":"string","optional":true},"priority_value8021_action_cluster":{"type":"string","optional":true},"priority_value8021_action_smb":{"type":"string","optional":true}}},"optional":true},"virtual_switch_configuration_override":{"nesting_mode":3,"block":{"attributes":{"enable_iov":{"type":"string","optional":true},"load_balancing_algorithm":{"type":"string","optional":true}}},"optional":true}}},"required":true},"storage_network":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"network_adapter_name":{"type":"string","required":true},"vlan_id":{"type":"string","required":true}}},"required":true}}},"required":true},"infrastructure_network":{"nesting_mode":3,"block":{"attributes":{"dhcp_enabled":{"type":"bool","optional":true,"default":false},"dns_server":{"type":["list","string"],"required":true},"gateway":{"type":"string","required":true},"subnet_mask":{"type":"string","required":true}},"block_types":{"ip_pool":{"nesting_mode":3,"block":{"attributes":{"ending_address":{"type":"string","required":true},"starting_address":{"type":"string","required":true}}},"required":true}}},"required":true},"optional_service":{"nesting_mode":3,"block":{"attributes":{"custom_location":{"type":"string","required":true}}},"required":true},"physical_node":{"nesting_mode":3,"block":{"attributes":{"ipv4_address":{"type":"string","required":true},"name":{"type":"string","required":true}}},"required":true},"storage":{"nesting_mode":3,"block":{"attributes":{"configuration_mode":{"type":"string","required":true}}},"required":true}}},"required":true}}}},"azurerm_stack_hci_extension":{"block":{"attributes":{"arc_setting_id":{"type":"string","required":true},"auto_upgrade_minor_version_enabled":{"type":"bool","optional":true,"default":true},"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","optional":true}}}},"azurerm_stack_hci_logical_network":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"dns_servers":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_switch_name":{"type":"string","required":true}},"block_types":{"subnet":{"nesting_mode":3,"block":{"attributes":{"address_prefix":{"type":"string","optional":true},"ip_allocation_method":{"type":"string","required":true},"vlan_id":{"type":"number","optional":true}},"block_types":{"ip_pool":{"nesting_mode":3,"block":{"attributes":{"end":{"type":"string","required":true},"start":{"type":"string","required":true}}},"optional":true},"route":{"nesting_mode":3,"block":{"attributes":{"address_prefix":{"type":"string","required":true},"name":{"type":"string","optional":true},"next_hop_ip_address":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_stack_hci_marketplace_gallery_image":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"hyperv_generation":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"os_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_path_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"version":{"type":"string","required":true}},"block_types":{"identifier":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true}}},"required":true}}}},"azurerm_stack_hci_network_interface":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"dns_servers":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"mac_address":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"gateway":{"type":"string","computed":true},"prefix_length":{"type":"string","computed":true},"private_ip_address":{"type":"string","optional":true},"subnet_id":{"type":"string","required":true}}},"required":true}}}},"azurerm_stack_hci_storage_path":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"path":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_stack_hci_virtual_hard_disk":{"block":{"attributes":{"block_size_in_bytes":{"type":"number","optional":true},"custom_location_id":{"type":"string","required":true},"disk_file_format":{"type":"string","optional":true},"disk_size_in_gb":{"type":"number","required":true},"dynamic_enabled":{"type":"bool","optional":true,"default":false},"hyperv_generation":{"type":"string","optional":true},"location":{"type":"string","required":true},"logical_sector_in_bytes":{"type":"number","optional":true},"name":{"type":"string","required":true},"physical_sector_in_bytes":{"type":"number","optional":true},"resource_group_name":{"type":"string","required":true},"storage_path_id":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_static_site":{"block":{"attributes":{"api_key":{"type":"string","computed":true},"app_settings":{"type":["map","string"],"optional":true},"default_host_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_size":{"type":"string","optional":true,"default":"Free"},"sku_tier":{"type":"string","optional":true,"default":"Free"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_static_site_custom_domain":{"block":{"attributes":{"domain_name":{"type":"string","required":true},"static_site_id":{"type":"string","required":true},"validation_token":{"type":"string","computed":true},"validation_type":{"type":"string","optional":true}}}},"azurerm_static_web_app":{"block":{"attributes":{"api_key":{"type":"string","computed":true},"app_settings":{"type":["map","string"],"optional":true},"configuration_file_changes_enabled":{"type":"bool","optional":true,"default":true},"default_host_name":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"preview_environments_enabled":{"type":"bool","optional":true,"default":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"repository_branch":{"type":"string","optional":true,"required_with":["repository_url","repository_token"]},"repository_token":{"type":"string","optional":true,"required_with":["repository_url","repository_branch"]},"repository_url":{"type":"string","optional":true,"required_with":["repository_token","repository_branch"]},"resource_group_name":{"type":"string","required":true},"sku_size":{"type":"string","optional":true,"default":"Free"},"sku_tier":{"type":"string","optional":true,"default":"Free"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"basic_auth":{"nesting_mode":3,"block":{"attributes":{"environments":{"type":"string","required":true},"password":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_static_web_app_custom_domain":{"block":{"attributes":{"domain_name":{"type":"string","required":true},"static_web_app_id":{"type":"string","required":true},"validation_token":{"type":"string","computed":true},"validation_type":{"type":"string","required":true}}}},"azurerm_static_web_app_function_app_registration":{"block":{"attributes":{"function_app_id":{"type":"string","required":true},"static_web_app_id":{"type":"string","required":true}}}},"azurerm_storage_account":{"block":{"attributes":{"access_tier":{"type":"string","optional":true,"computed":true},"account_kind":{"type":"string","optional":true,"default":"StorageV2"},"account_replication_type":{"type":"string","required":true},"account_tier":{"type":"string","required":true},"allow_nested_items_to_be_public":{"type":"bool","optional":true,"default":true},"allowed_copy_scope":{"type":"string","optional":true},"cross_tenant_replication_enabled":{"type":"bool","optional":true,"default":false},"default_to_oauth_authentication":{"type":"bool","optional":true,"default":false},"dns_endpoint_type":{"type":"string","optional":true,"default":"Standard"},"edge_zone":{"type":"string","optional":true},"https_traffic_only_enabled":{"type":"bool","optional":true,"default":true},"infrastructure_encryption_enabled":{"type":"bool","optional":true,"default":false},"is_hns_enabled":{"type":"bool","optional":true,"default":false},"large_file_share_enabled":{"type":"bool","optional":true,"computed":true},"local_user_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"min_tls_version":{"type":"string","optional":true,"default":"TLS1_2"},"name":{"type":"string","required":true},"nfsv3_enabled":{"type":"bool","optional":true,"default":false},"primary_access_key":{"type":"string","computed":true},"primary_blob_connection_string":{"type":"string","computed":true},"primary_blob_endpoint":{"type":"string","computed":true},"primary_blob_host":{"type":"string","computed":true},"primary_blob_internet_endpoint":{"type":"string","computed":true},"primary_blob_internet_host":{"type":"string","computed":true},"primary_blob_microsoft_endpoint":{"type":"string","computed":true},"primary_blob_microsoft_host":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"primary_dfs_endpoint":{"type":"string","computed":true},"primary_dfs_host":{"type":"string","computed":true},"primary_dfs_internet_endpoint":{"type":"string","computed":true},"primary_dfs_internet_host":{"type":"string","computed":true},"primary_dfs_microsoft_endpoint":{"type":"string","computed":true},"primary_dfs_microsoft_host":{"type":"string","computed":true},"primary_file_endpoint":{"type":"string","computed":true},"primary_file_host":{"type":"string","computed":true},"primary_file_internet_endpoint":{"type":"string","computed":true},"primary_file_internet_host":{"type":"string","computed":true},"primary_file_microsoft_endpoint":{"type":"string","computed":true},"primary_file_microsoft_host":{"type":"string","computed":true},"primary_location":{"type":"string","computed":true},"primary_queue_endpoint":{"type":"string","computed":true},"primary_queue_host":{"type":"string","computed":true},"primary_queue_microsoft_endpoint":{"type":"string","computed":true},"primary_queue_microsoft_host":{"type":"string","computed":true},"primary_table_endpoint":{"type":"string","computed":true},"primary_table_host":{"type":"string","computed":true},"primary_table_microsoft_endpoint":{"type":"string","computed":true},"primary_table_microsoft_host":{"type":"string","computed":true},"primary_web_endpoint":{"type":"string","computed":true},"primary_web_host":{"type":"string","computed":true},"primary_web_internet_endpoint":{"type":"string","computed":true},"primary_web_internet_host":{"type":"string","computed":true},"primary_web_microsoft_endpoint":{"type":"string","computed":true},"primary_web_microsoft_host":{"type":"string","computed":true},"provisioned_billing_model_version":{"type":"string","optional":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"queue_encryption_key_type":{"type":"string","optional":true,"default":"Service"},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_blob_connection_string":{"type":"string","computed":true},"secondary_blob_endpoint":{"type":"string","computed":true},"secondary_blob_host":{"type":"string","computed":true},"secondary_blob_internet_endpoint":{"type":"string","computed":true},"secondary_blob_internet_host":{"type":"string","computed":true},"secondary_blob_microsoft_endpoint":{"type":"string","computed":true},"secondary_blob_microsoft_host":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"secondary_dfs_endpoint":{"type":"string","computed":true},"secondary_dfs_host":{"type":"string","computed":true},"secondary_dfs_internet_endpoint":{"type":"string","computed":true},"secondary_dfs_internet_host":{"type":"string","computed":true},"secondary_dfs_microsoft_endpoint":{"type":"string","computed":true},"secondary_dfs_microsoft_host":{"type":"string","computed":true},"secondary_file_endpoint":{"type":"string","computed":true},"secondary_file_host":{"type":"string","computed":true},"secondary_file_internet_endpoint":{"type":"string","computed":true},"secondary_file_internet_host":{"type":"string","computed":true},"secondary_file_microsoft_endpoint":{"type":"string","computed":true},"secondary_file_microsoft_host":{"type":"string","computed":true},"secondary_location":{"type":"string","computed":true},"secondary_queue_endpoint":{"type":"string","computed":true},"secondary_queue_host":{"type":"string","computed":true},"secondary_queue_microsoft_endpoint":{"type":"string","computed":true},"secondary_queue_microsoft_host":{"type":"string","computed":true},"secondary_table_endpoint":{"type":"string","computed":true},"secondary_table_host":{"type":"string","computed":true},"secondary_table_microsoft_endpoint":{"type":"string","computed":true},"secondary_table_microsoft_host":{"type":"string","computed":true},"secondary_web_endpoint":{"type":"string","computed":true},"secondary_web_host":{"type":"string","computed":true},"secondary_web_internet_endpoint":{"type":"string","computed":true},"secondary_web_internet_host":{"type":"string","computed":true},"secondary_web_microsoft_endpoint":{"type":"string","computed":true},"secondary_web_microsoft_host":{"type":"string","computed":true},"sftp_enabled":{"type":"bool","optional":true,"default":false},"shared_access_key_enabled":{"type":"bool","optional":true,"default":true},"table_encryption_key_type":{"type":"string","optional":true,"default":"Service"},"tags":{"type":["map","string"],"optional":true}},"block_types":{"azure_files_authentication":{"nesting_mode":3,"block":{"attributes":{"default_share_level_permission":{"type":"string","optional":true,"default":"None"},"directory_type":{"type":"string","required":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"domain_guid":{"type":"string","required":true},"domain_name":{"type":"string","required":true},"domain_sid":{"type":"string","optional":true},"forest_name":{"type":"string","optional":true},"netbios_domain_name":{"type":"string","optional":true},"storage_sid":{"type":"string","optional":true}}},"optional":true,"computed":true}}},"optional":true},"blob_properties":{"nesting_mode":3,"block":{"attributes":{"change_feed_enabled":{"type":"bool","optional":true,"default":false},"change_feed_retention_in_days":{"type":"number","optional":true},"default_service_version":{"type":"string","optional":true,"computed":true},"last_access_time_enabled":{"type":"bool","optional":true,"default":false},"versioning_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"container_delete_retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true,"default":7}}},"optional":true},"cors_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["list","string"],"required":true},"allowed_methods":{"type":["list","string"],"required":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"required":true},"max_age_in_seconds":{"type":"number","required":true}}},"optional":true},"delete_retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true,"default":7},"permanent_delete_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"restore_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","required":true}}},"optional":true,"required_with":["blob_properties.0.delete_retention_policy"]}}},"optional":true,"computed":true},"custom_domain":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"use_subdomain":{"type":"bool","optional":true,"default":false}}},"optional":true},"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"key_vault_key_id":{"type":"string","optional":true,"exactly_one_of":["customer_managed_key.0.managed_hsm_key_id","customer_managed_key.0.key_vault_key_id"]},"managed_hsm_key_id":{"type":"string","optional":true,"exactly_one_of":["customer_managed_key.0.managed_hsm_key_id","customer_managed_key.0.key_vault_key_id"]},"user_assigned_identity_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"immutability_policy":{"nesting_mode":3,"block":{"attributes":{"allow_protected_append_writes":{"type":"bool","required":true},"period_since_creation_in_days":{"type":"number","required":true},"state":{"type":"string","required":true}}},"optional":true},"network_rules":{"nesting_mode":3,"block":{"attributes":{"bypass":{"type":["set","string"],"optional":true,"computed":true},"default_action":{"type":"string","required":true},"ip_rules":{"type":["set","string"],"optional":true,"computed":true},"virtual_network_subnet_ids":{"type":["set","string"],"optional":true,"computed":true}},"block_types":{"private_link_access":{"nesting_mode":3,"block":{"attributes":{"endpoint_resource_id":{"type":"string","required":true},"endpoint_tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true}}},"optional":true,"computed":true},"queue_properties":{"nesting_mode":3,"block":{"block_types":{"cors_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["list","string"],"required":true},"allowed_methods":{"type":["list","string"],"required":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"required":true},"max_age_in_seconds":{"type":"number","required":true}}},"optional":true},"hour_metrics":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"include_apis":{"type":"bool","optional":true},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true}}},"optional":true,"computed":true},"logging":{"nesting_mode":3,"block":{"attributes":{"delete":{"type":"bool","required":true},"read":{"type":"bool","required":true},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true},"write":{"type":"bool","required":true}}},"optional":true,"computed":true},"minute_metrics":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"include_apis":{"type":"bool","optional":true},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"routing":{"nesting_mode":3,"block":{"attributes":{"choice":{"type":"string","optional":true,"default":"MicrosoftRouting"},"publish_internet_endpoints":{"type":"bool","optional":true,"default":false},"publish_microsoft_endpoints":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true},"sas_policy":{"nesting_mode":3,"block":{"attributes":{"expiration_action":{"type":"string","optional":true,"default":"Log"},"expiration_period":{"type":"string","required":true}}},"optional":true},"share_properties":{"nesting_mode":3,"block":{"block_types":{"cors_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["list","string"],"required":true},"allowed_methods":{"type":["list","string"],"required":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"required":true},"max_age_in_seconds":{"type":"number","required":true}}},"optional":true},"retention_policy":{"nesting_mode":3,"block":{"attributes":{"days":{"type":"number","optional":true,"default":7}}},"optional":true},"smb":{"nesting_mode":3,"block":{"attributes":{"authentication_types":{"type":["set","string"],"optional":true},"channel_encryption_type":{"type":["set","string"],"optional":true},"kerberos_ticket_encryption_type":{"type":["set","string"],"optional":true},"multichannel_enabled":{"type":"bool","optional":true,"default":false},"versions":{"type":["set","string"],"optional":true}}},"optional":true}}},"optional":true,"computed":true},"static_website":{"nesting_mode":3,"block":{"attributes":{"error_404_document":{"type":"string","optional":true},"index_document":{"type":"string","optional":true}}},"optional":true,"computed":true}}}},"azurerm_storage_account_customer_managed_key":{"block":{"attributes":{"federated_identity_client_id":{"type":"string","optional":true,"required_with":["user_assigned_identity_id"]},"key_name":{"type":"string","required":true},"key_vault_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_id","key_vault_uri"]},"key_vault_uri":{"type":"string","optional":true,"computed":true,"exactly_one_of":["managed_hsm_key_id","key_vault_id","key_vault_uri"]},"key_version":{"type":"string","optional":true},"managed_hsm_key_id":{"type":"string","optional":true,"exactly_one_of":["managed_hsm_key_id","key_vault_id","key_vault_uri"]},"storage_account_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}}},"azurerm_storage_account_local_user":{"block":{"attributes":{"home_directory":{"type":"string","optional":true},"name":{"type":"string","required":true},"password":{"type":"string","computed":true},"sid":{"type":"string","computed":true},"ssh_key_enabled":{"type":"bool","optional":true,"default":false,"at_least_one_of":["ssh_key_enabled","ssh_password_enabled"]},"ssh_password_enabled":{"type":"bool","optional":true,"default":false,"at_least_one_of":["ssh_key_enabled","ssh_password_enabled"]},"storage_account_id":{"type":"string","required":true}},"block_types":{"permission_scope":{"nesting_mode":3,"block":{"attributes":{"resource_name":{"type":"string","required":true},"service":{"type":"string","required":true}},"block_types":{"permissions":{"nesting_mode":3,"block":{"attributes":{"create":{"type":"bool","optional":true,"default":false},"delete":{"type":"bool","optional":true,"default":false},"list":{"type":"bool","optional":true,"default":false},"read":{"type":"bool","optional":true,"default":false},"write":{"type":"bool","optional":true,"default":false}}},"required":true}}},"optional":true},"ssh_authorized_key":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"key":{"type":"string","required":true}}},"optional":true,"required_with":["ssh_key_enabled"]}}}},"azurerm_storage_account_network_rules":{"block":{"attributes":{"bypass":{"type":["set","string"],"optional":true,"computed":true},"default_action":{"type":"string","required":true},"ip_rules":{"type":["set","string"],"optional":true},"storage_account_id":{"type":"string","required":true},"virtual_network_subnet_ids":{"type":["set","string"],"optional":true}},"block_types":{"private_link_access":{"nesting_mode":3,"block":{"attributes":{"endpoint_resource_id":{"type":"string","required":true},"endpoint_tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true}}}},"azurerm_storage_account_queue_properties":{"block":{"attributes":{"storage_account_id":{"type":"string","required":true}},"block_types":{"cors_rule":{"nesting_mode":3,"block":{"attributes":{"allowed_headers":{"type":["list","string"],"required":true},"allowed_methods":{"type":["list","string"],"required":true},"allowed_origins":{"type":["list","string"],"required":true},"exposed_headers":{"type":["list","string"],"required":true},"max_age_in_seconds":{"type":"number","required":true}}},"optional":true,"at_least_one_of":["minute_metrics","hour_metrics","logging","cors_rule"]},"hour_metrics":{"nesting_mode":3,"block":{"attributes":{"include_apis":{"type":"bool","optional":true,"default":false},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true}}},"optional":true,"computed":true,"at_least_one_of":["minute_metrics","hour_metrics","logging","cors_rule"]},"logging":{"nesting_mode":3,"block":{"attributes":{"delete":{"type":"bool","required":true},"read":{"type":"bool","required":true},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true},"write":{"type":"bool","required":true}}},"optional":true,"computed":true,"at_least_one_of":["minute_metrics","hour_metrics","logging","cors_rule"]},"minute_metrics":{"nesting_mode":3,"block":{"attributes":{"include_apis":{"type":"bool","optional":true,"default":false},"retention_policy_days":{"type":"number","optional":true},"version":{"type":"string","required":true}}},"optional":true,"computed":true,"at_least_one_of":["minute_metrics","hour_metrics","logging","cors_rule"]}}}},"azurerm_storage_account_static_website":{"block":{"attributes":{"error_404_document":{"type":"string","optional":true,"at_least_one_of":["error_404_document","index_document"]},"index_document":{"type":"string","optional":true,"at_least_one_of":["error_404_document","index_document"]},"storage_account_id":{"type":"string","required":true}}}},"azurerm_storage_blob":{"block":{"attributes":{"access_tier":{"type":"string","optional":true,"computed":true},"cache_control":{"type":"string","optional":true},"content_md5":{"type":"string","optional":true,"conflicts_with":["source_uri"]},"content_type":{"type":"string","optional":true,"default":"application/octet-stream"},"encryption_scope":{"type":"string","optional":true},"metadata":{"type":["map","string"],"optional":true,"computed":true},"name":{"type":"string","required":true},"parallelism":{"type":"number","optional":true,"default":8},"size":{"type":"number","optional":true,"default":0},"source":{"type":"string","optional":true,"conflicts_with":["source_uri","source_content"]},"source_content":{"type":"string","optional":true,"conflicts_with":["source","source_uri"]},"source_uri":{"type":"string","optional":true,"conflicts_with":["source","source_content"]},"storage_account_name":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true},"type":{"type":"string","required":true},"url":{"type":"string","computed":true}}}},"azurerm_storage_blob_inventory_policy":{"block":{"attributes":{"storage_account_id":{"type":"string","required":true}},"block_types":{"rules":{"nesting_mode":4,"block":{"attributes":{"format":{"type":"string","required":true},"name":{"type":"string","required":true},"schedule":{"type":"string","required":true},"schema_fields":{"type":["list","string"],"required":true},"scope":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"blob_types":{"type":["set","string"],"required":true},"exclude_prefixes":{"type":["set","string"],"optional":true},"include_blob_versions":{"type":"bool","optional":true,"default":false},"include_deleted":{"type":"bool","optional":true,"default":false},"include_snapshots":{"type":"bool","optional":true,"default":false},"prefix_match":{"type":["set","string"],"optional":true}}},"optional":true}}},"required":true}}}},"azurerm_storage_container":{"block":{"attributes":{"container_access_type":{"type":"string","optional":true,"default":"private"},"default_encryption_scope":{"type":"string","optional":true,"computed":true},"encryption_scope_override_enabled":{"type":"bool","optional":true,"default":true,"required_with":["default_encryption_scope"]},"has_immutability_policy":{"type":"bool","computed":true},"has_legal_hold":{"type":"bool","computed":true},"metadata":{"type":["map","string"],"optional":true,"computed":true},"name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"storage_account_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_id","storage_account_name"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_id","storage_account_name"]}}}},"azurerm_storage_container_immutability_policy":{"block":{"attributes":{"immutability_period_in_days":{"type":"number","required":true},"locked":{"type":"bool","optional":true,"default":false},"protected_append_writes_all_enabled":{"type":"bool","optional":true,"default":false},"protected_append_writes_enabled":{"type":"bool","optional":true,"default":false},"storage_container_resource_manager_id":{"type":"string","required":true}}}},"azurerm_storage_data_lake_gen2_filesystem":{"block":{"attributes":{"default_encryption_scope":{"type":"string","optional":true,"computed":true},"group":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"owner":{"type":"string","optional":true,"computed":true},"properties":{"type":["map","string"],"optional":true},"storage_account_id":{"type":"string","required":true}},"block_types":{"ace":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","optional":true},"permissions":{"type":"string","required":true},"scope":{"type":"string","optional":true,"default":"access"},"type":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_storage_data_lake_gen2_path":{"block":{"attributes":{"filesystem_name":{"type":"string","required":true},"group":{"type":"string","optional":true,"computed":true},"owner":{"type":"string","optional":true,"computed":true},"path":{"type":"string","required":true},"resource":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}},"block_types":{"ace":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","optional":true},"permissions":{"type":"string","required":true},"scope":{"type":"string","optional":true,"default":"access"},"type":{"type":"string","required":true}}},"optional":true,"computed":true}}}},"azurerm_storage_encryption_scope":{"block":{"attributes":{"infrastructure_encryption_required":{"type":"bool","optional":true},"key_vault_key_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"source":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true}}}},"azurerm_storage_management_policy":{"block":{"attributes":{"storage_account_id":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"name":{"type":"string","required":true}},"block_types":{"actions":{"nesting_mode":3,"block":{"block_types":{"base_blob":{"nesting_mode":3,"block":{"attributes":{"auto_tier_to_hot_from_cool_enabled":{"type":"bool","optional":true},"delete_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1},"delete_after_days_since_last_access_time_greater_than":{"type":"number","optional":true,"default":-1},"delete_after_days_since_modification_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_last_access_time_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_last_tier_change_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_modification_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cold_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cold_after_days_since_last_access_time_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cold_after_days_since_modification_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cool_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cool_after_days_since_last_access_time_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cool_after_days_since_modification_greater_than":{"type":"number","optional":true,"default":-1}}},"optional":true},"snapshot":{"nesting_mode":3,"block":{"attributes":{"change_tier_to_archive_after_days_since_creation":{"type":"number","optional":true,"default":-1},"change_tier_to_cool_after_days_since_creation":{"type":"number","optional":true,"default":-1},"delete_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_last_tier_change_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cold_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1}}},"optional":true},"version":{"nesting_mode":3,"block":{"attributes":{"change_tier_to_archive_after_days_since_creation":{"type":"number","optional":true,"default":-1},"change_tier_to_cool_after_days_since_creation":{"type":"number","optional":true,"default":-1},"delete_after_days_since_creation":{"type":"number","optional":true,"default":-1},"tier_to_archive_after_days_since_last_tier_change_greater_than":{"type":"number","optional":true,"default":-1},"tier_to_cold_after_days_since_creation_greater_than":{"type":"number","optional":true,"default":-1}}},"optional":true}}},"required":true},"filters":{"nesting_mode":3,"block":{"attributes":{"blob_types":{"type":["set","string"],"required":true},"prefix_match":{"type":["set","string"],"optional":true}},"block_types":{"match_blob_index_tag":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"operation":{"type":"string","optional":true,"default":"=="},"value":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_storage_mover":{"block":{"attributes":{"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_storage_mover_agent":{"block":{"attributes":{"arc_virtual_machine_id":{"type":"string","required":true},"arc_virtual_machine_uuid":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"storage_mover_id":{"type":"string","required":true}}}},"azurerm_storage_mover_job_definition":{"block":{"attributes":{"agent_name":{"type":"string","optional":true},"copy_mode":{"type":"string","required":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"source_name":{"type":"string","required":true},"source_sub_path":{"type":"string","optional":true},"storage_mover_project_id":{"type":"string","required":true},"target_name":{"type":"string","required":true},"target_sub_path":{"type":"string","optional":true}}}},"azurerm_storage_mover_project":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"storage_mover_id":{"type":"string","required":true}}}},"azurerm_storage_mover_source_endpoint":{"block":{"attributes":{"description":{"type":"string","optional":true},"export":{"type":"string","optional":true},"host":{"type":"string","required":true},"name":{"type":"string","required":true},"nfs_version":{"type":"string","optional":true,"default":"NFSauto"},"storage_mover_id":{"type":"string","required":true}}}},"azurerm_storage_mover_target_endpoint":{"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true},"storage_mover_id":{"type":"string","required":true}}}},"azurerm_storage_object_replication":{"block":{"attributes":{"destination_object_replication_id":{"type":"string","computed":true},"destination_storage_account_id":{"type":"string","required":true},"source_object_replication_id":{"type":"string","computed":true},"source_storage_account_id":{"type":"string","required":true}},"block_types":{"rules":{"nesting_mode":4,"block":{"attributes":{"copy_blobs_created_after":{"type":"string","optional":true,"default":"OnlyNewObjects"},"destination_container_name":{"type":"string","required":true},"filter_out_blobs_with_prefix":{"type":["set","string"],"optional":true},"name":{"type":"string","computed":true},"source_container_name":{"type":"string","required":true}}},"required":true}}}},"azurerm_storage_queue":{"block":{"attributes":{"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"storage_account_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_id","storage_account_name"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_id","storage_account_name"]},"url":{"type":"string","computed":true}}}},"azurerm_storage_share":{"block":{"attributes":{"access_tier":{"type":"string","optional":true,"computed":true},"enabled_protocol":{"type":"string","optional":true,"default":"SMB"},"metadata":{"type":["map","string"],"optional":true,"computed":true},"name":{"type":"string","required":true},"quota":{"type":"number","required":true},"resource_manager_id":{"type":"string","computed":true},"storage_account_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_account_id"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_account_id"]},"url":{"type":"string","computed":true}},"block_types":{"acl":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","required":true}},"block_types":{"access_policy":{"nesting_mode":3,"block":{"attributes":{"expiry":{"type":"string","optional":true},"permissions":{"type":"string","required":true},"start":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_storage_share_directory":{"block":{"attributes":{"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"storage_share_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["storage_share_id","storage_share_url"]},"storage_share_url":{"type":"string","optional":true,"computed":true,"exactly_one_of":["storage_share_id","storage_share_url"]}}}},"azurerm_storage_share_file":{"block":{"attributes":{"content_disposition":{"type":"string","optional":true},"content_encoding":{"type":"string","optional":true},"content_length":{"type":"number","computed":true},"content_md5":{"type":"string","optional":true},"content_type":{"type":"string","optional":true,"default":"application/octet-stream"},"metadata":{"type":["map","string"],"optional":true},"name":{"type":"string","required":true},"path":{"type":"string","optional":true,"default":""},"source":{"type":"string","optional":true},"storage_share_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["storage_share_id","storage_share_url"]},"storage_share_url":{"type":"string","optional":true,"computed":true,"exactly_one_of":["storage_share_id","storage_share_url"]}}}},"azurerm_storage_sync":{"block":{"attributes":{"incoming_traffic_policy":{"type":"string","optional":true,"default":"AllowAllTraffic"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"registered_servers":{"type":["list","string"],"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_storage_sync_cloud_endpoint":{"block":{"attributes":{"file_share_name":{"type":"string","required":true},"name":{"type":"string","required":true},"storage_account_id":{"type":"string","required":true},"storage_account_tenant_id":{"type":"string","optional":true,"computed":true},"storage_sync_group_id":{"type":"string","required":true}}}},"azurerm_storage_sync_group":{"block":{"attributes":{"name":{"type":"string","required":true},"storage_sync_id":{"type":"string","required":true}}}},"azurerm_storage_sync_server_endpoint":{"block":{"attributes":{"cloud_tiering_enabled":{"type":"bool","optional":true,"default":false},"initial_download_policy":{"type":"string","optional":true,"default":"NamespaceThenModifiedFiles"},"local_cache_mode":{"type":"string","optional":true,"default":"UpdateLocallyCachedFiles"},"name":{"type":"string","required":true},"registered_server_id":{"type":"string","required":true},"server_local_path":{"type":"string","required":true},"storage_sync_group_id":{"type":"string","required":true},"tier_files_older_than_days":{"type":"number","optional":true},"volume_free_space_percent":{"type":"number","optional":true,"default":20}}}},"azurerm_storage_table":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_manager_id":{"type":"string","computed":true},"storage_account_name":{"type":"string","required":true}},"block_types":{"acl":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","required":true}},"block_types":{"access_policy":{"nesting_mode":3,"block":{"attributes":{"expiry":{"type":"string","required":true},"permissions":{"type":"string","required":true},"start":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_storage_table_entity":{"block":{"attributes":{"entity":{"type":["map","string"],"required":true},"partition_key":{"type":"string","required":true},"row_key":{"type":"string","required":true},"storage_table_id":{"type":"string","required":true}}}},"azurerm_stream_analytics_cluster":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"streaming_capacity":{"type":"number","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_stream_analytics_function_javascript_uda":{"block":{"attributes":{"name":{"type":"string","required":true},"script":{"type":"string","required":true},"stream_analytics_job_id":{"type":"string","required":true}},"block_types":{"input":{"nesting_mode":3,"block":{"attributes":{"configuration_parameter":{"type":"bool","optional":true,"default":false},"type":{"type":"string","required":true}}},"required":true},"output":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_function_javascript_udf":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"script":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true}},"block_types":{"input":{"nesting_mode":3,"block":{"attributes":{"configuration_parameter":{"type":"bool","optional":true,"default":false},"type":{"type":"string","required":true}}},"required":true},"output":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_job":{"block":{"attributes":{"compatibility_level":{"type":"string","optional":true,"computed":true},"content_storage_policy":{"type":"string","optional":true,"default":"SystemAccount"},"data_locale":{"type":"string","optional":true,"default":"en-US"},"events_late_arrival_max_delay_in_seconds":{"type":"number","optional":true,"default":5},"events_out_of_order_max_delay_in_seconds":{"type":"number","optional":true,"default":0},"events_out_of_order_policy":{"type":"string","optional":true,"default":"Adjust"},"job_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"output_error_policy":{"type":"string","optional":true,"default":"Drop"},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","optional":true,"default":"Standard"},"stream_analytics_cluster_id":{"type":"string","optional":true},"streaming_units":{"type":"number","optional":true},"tags":{"type":["map","string"],"optional":true},"transformation_query":{"type":"string","required":true},"type":{"type":"string","optional":true,"default":"Cloud"}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"job_storage_account":{"nesting_mode":3,"block":{"attributes":{"account_key":{"type":"string","optional":true},"account_name":{"type":"string","required":true},"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"}}},"optional":true}}}},"azurerm_stream_analytics_job_schedule":{"block":{"attributes":{"last_output_time":{"type":"string","computed":true},"start_mode":{"type":"string","required":true},"start_time":{"type":"string","optional":true,"computed":true},"stream_analytics_job_id":{"type":"string","required":true}}}},"azurerm_stream_analytics_job_storage_account":{"block":{"attributes":{"authentication_mode":{"type":"string","required":true},"storage_account_key":{"type":"string","optional":true},"storage_account_name":{"type":"string","required":true},"stream_analytics_job_id":{"type":"string","required":true}}}},"azurerm_stream_analytics_managed_private_endpoint":{"block":{"attributes":{"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"stream_analytics_cluster_name":{"type":"string","required":true},"subresource_name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_stream_analytics_output_blob":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"batch_max_wait_time":{"type":"string","optional":true},"batch_min_rows":{"type":"number","optional":true},"blob_write_mode":{"type":"string","optional":true,"default":"Append"},"date_format":{"type":"string","required":true},"name":{"type":"string","required":true},"path_pattern":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_key":{"type":"string","optional":true},"storage_account_name":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"time_format":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"format":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_output_cosmosdb":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"container_name":{"type":"string","required":true},"cosmosdb_account_key":{"type":"string","required":true},"cosmosdb_sql_database_id":{"type":"string","required":true},"document_id":{"type":"string","optional":true},"name":{"type":"string","required":true},"partition_key":{"type":"string","optional":true},"stream_analytics_job_id":{"type":"string","required":true}}}},"azurerm_stream_analytics_output_eventhub":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"eventhub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"partition_key":{"type":"string","optional":true},"property_columns":{"type":["list","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"servicebus_namespace":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","optional":true},"shared_access_policy_name":{"type":"string","optional":true},"stream_analytics_job_name":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"format":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_output_function":{"block":{"attributes":{"api_key":{"type":"string","required":true},"batch_max_count":{"type":"number","optional":true,"default":100},"batch_max_in_bytes":{"type":"number","optional":true,"default":262144},"function_app":{"type":"string","required":true},"function_name":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true}}}},"azurerm_stream_analytics_output_mssql":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"database":{"type":"string","required":true},"max_batch_count":{"type":"number","optional":true,"default":10000},"max_writer_count":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true},"password":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"server":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"table":{"type":"string","required":true},"user":{"type":"string","optional":true}}}},"azurerm_stream_analytics_output_powerbi":{"block":{"attributes":{"dataset":{"type":"string","required":true},"group_id":{"type":"string","required":true},"group_name":{"type":"string","required":true},"name":{"type":"string","required":true},"stream_analytics_job_id":{"type":"string","required":true},"table":{"type":"string","required":true},"token_user_display_name":{"type":"string","optional":true},"token_user_principal_name":{"type":"string","optional":true}}}},"azurerm_stream_analytics_output_servicebus_queue":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"name":{"type":"string","required":true},"property_columns":{"type":["list","string"],"optional":true},"queue_name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"servicebus_namespace":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","optional":true},"shared_access_policy_name":{"type":"string","optional":true},"stream_analytics_job_name":{"type":"string","required":true},"system_property_columns":{"type":["map","string"],"optional":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"format":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_output_servicebus_topic":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"name":{"type":"string","required":true},"property_columns":{"type":["list","string"],"optional":true},"resource_group_name":{"type":"string","required":true},"servicebus_namespace":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","optional":true},"shared_access_policy_name":{"type":"string","optional":true},"stream_analytics_job_name":{"type":"string","required":true},"system_property_columns":{"type":["map","string"],"optional":true},"topic_name":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"format":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_output_synapse":{"block":{"attributes":{"database":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"table":{"type":"string","required":true},"user":{"type":"string","required":true}}}},"azurerm_stream_analytics_output_table":{"block":{"attributes":{"batch_size":{"type":"number","required":true},"columns_to_remove":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"partition_key":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"row_key":{"type":"string","required":true},"storage_account_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"table":{"type":"string","required":true}}}},"azurerm_stream_analytics_reference_input_blob":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"date_format":{"type":"string","required":true},"name":{"type":"string","required":true},"path_pattern":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_key":{"type":"string","optional":true},"storage_account_name":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"time_format":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_reference_input_mssql":{"block":{"attributes":{"database":{"type":"string","required":true},"delta_snapshot_query":{"type":"string","optional":true},"full_snapshot_query":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"refresh_interval_duration":{"type":"string","optional":true},"refresh_type":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"server":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"table":{"type":"string","optional":true},"username":{"type":"string","required":true}}}},"azurerm_stream_analytics_stream_input_blob":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"date_format":{"type":"string","required":true},"name":{"type":"string","required":true},"path_pattern":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"storage_account_key":{"type":"string","required":true},"storage_account_name":{"type":"string","required":true},"storage_container_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true},"time_format":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_stream_input_eventhub":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"eventhub_consumer_group_name":{"type":"string","optional":true},"eventhub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"partition_key":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"servicebus_namespace":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","optional":true},"shared_access_policy_name":{"type":"string","optional":true},"stream_analytics_job_name":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_stream_input_eventhub_v2":{"block":{"attributes":{"authentication_mode":{"type":"string","optional":true,"default":"ConnectionString"},"eventhub_consumer_group_name":{"type":"string","optional":true},"eventhub_name":{"type":"string","required":true},"name":{"type":"string","required":true},"partition_key":{"type":"string","optional":true},"servicebus_namespace":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","optional":true},"shared_access_policy_name":{"type":"string","optional":true},"stream_analytics_job_id":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_stream_analytics_stream_input_iothub":{"block":{"attributes":{"endpoint":{"type":"string","required":true},"eventhub_consumer_group_name":{"type":"string","required":true},"iothub_namespace":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"shared_access_policy_key":{"type":"string","required":true},"shared_access_policy_name":{"type":"string","required":true},"stream_analytics_job_name":{"type":"string","required":true}},"block_types":{"serialization":{"nesting_mode":3,"block":{"attributes":{"encoding":{"type":"string","optional":true},"field_delimiter":{"type":"string","optional":true},"type":{"type":"string","required":true}}},"required":true}}}},"azurerm_subnet":{"block":{"attributes":{"address_prefixes":{"type":["list","string"],"optional":true,"exactly_one_of":["address_prefixes","ip_address_pool"]},"default_outbound_access_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"private_endpoint_network_policies":{"type":"string","optional":true,"default":"Disabled"},"private_link_service_network_policies_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_endpoint_policy_ids":{"type":["set","string"],"optional":true},"service_endpoints":{"type":["set","string"],"optional":true},"sharing_scope":{"type":"string","optional":true},"virtual_network_name":{"type":"string","required":true}},"block_types":{"delegation":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true}},"block_types":{"service_delegation":{"nesting_mode":3,"block":{"attributes":{"actions":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true}}},"required":true}}},"optional":true},"ip_address_pool":{"nesting_mode":3,"block":{"attributes":{"allocated_ip_address_prefixes":{"type":["list","string"],"computed":true},"id":{"type":"string","required":true},"number_of_ip_addresses":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["address_prefixes","ip_address_pool"]}}}},"azurerm_subnet_nat_gateway_association":{"block":{"attributes":{"nat_gateway_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_subnet_network_security_group_association":{"block":{"attributes":{"network_security_group_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_subnet_route_table_association":{"block":{"attributes":{"route_table_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true}}}},"azurerm_subnet_service_endpoint_storage_policy":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"definition":{"nesting_mode":3,"block":{"attributes":{"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"service":{"type":"string","optional":true,"default":"Microsoft.Storage"},"service_resources":{"type":["set","string"],"required":true}}},"optional":true}}}},"azurerm_subscription":{"block":{"attributes":{"alias":{"type":"string","optional":true,"computed":true},"billing_scope_id":{"type":"string","optional":true,"exactly_one_of":["subscription_id","billing_scope_id"]},"subscription_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["subscription_id","billing_scope_id"]},"subscription_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","computed":true},"workload":{"type":"string","optional":true}}}},"azurerm_subscription_cost_management_export":{"block":{"attributes":{"active":{"type":"bool","optional":true,"default":true},"file_format":{"type":"string","optional":true,"default":"Csv"},"name":{"type":"string","required":true},"recurrence_period_end_date":{"type":"string","required":true},"recurrence_period_start_date":{"type":"string","required":true},"recurrence_type":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}},"block_types":{"export_data_options":{"nesting_mode":3,"block":{"attributes":{"time_frame":{"type":"string","required":true},"type":{"type":"string","required":true}}},"required":true},"export_data_storage_location":{"nesting_mode":3,"block":{"attributes":{"container_id":{"type":"string","required":true},"root_folder_path":{"type":"string","required":true}}},"required":true}}}},"azurerm_subscription_cost_management_view":{"block":{"attributes":{"accumulated":{"type":"bool","required":true},"chart_type":{"type":"string","required":true},"display_name":{"type":"string","required":true},"name":{"type":"string","required":true},"report_type":{"type":"string","required":true},"subscription_id":{"type":"string","required":true},"timeframe":{"type":"string","required":true}},"block_types":{"dataset":{"nesting_mode":3,"block":{"attributes":{"granularity":{"type":"string","required":true}},"block_types":{"aggregation":{"nesting_mode":4,"block":{"attributes":{"column_name":{"type":"string","required":true},"name":{"type":"string","required":true}}},"required":true},"grouping":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true},"sorting":{"nesting_mode":3,"block":{"attributes":{"direction":{"type":"string","required":true},"name":{"type":"string","required":true}}},"optional":true}}},"required":true},"kpi":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","required":true}}},"optional":true},"pivot":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_subscription_policy_assignment":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"enforce":{"type":"bool","optional":true,"default":true},"location":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"not_scopes":{"type":["list","string"],"optional":true},"parameters":{"type":"string","optional":true},"policy_definition_id":{"type":"string","required":true},"subscription_id":{"type":"string","required":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"non_compliance_message":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true}}},"optional":true},"overrides":{"nesting_mode":3,"block":{"attributes":{"value":{"type":"string","required":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","optional":true,"default":"policyDefinitionReferenceId"},"not_in":{"type":["list","string"],"optional":true}}},"optional":true}}},"optional":true},"resource_selectors":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true}},"block_types":{"selectors":{"nesting_mode":3,"block":{"attributes":{"in":{"type":["list","string"],"optional":true},"kind":{"type":"string","required":true},"not_in":{"type":["list","string"],"optional":true}}},"required":true}}},"optional":true}}}},"azurerm_subscription_policy_exemption":{"block":{"attributes":{"description":{"type":"string","optional":true},"display_name":{"type":"string","optional":true},"exemption_category":{"type":"string","required":true},"expires_on":{"type":"string","optional":true},"metadata":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_ids":{"type":["list","string"],"optional":true},"subscription_id":{"type":"string","required":true}}}},"azurerm_subscription_policy_remediation":{"block":{"attributes":{"failure_percentage":{"type":"number","optional":true},"location_filters":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"parallel_deployments":{"type":"number","optional":true},"policy_assignment_id":{"type":"string","required":true},"policy_definition_reference_id":{"type":"string","optional":true},"resource_count":{"type":"number","optional":true},"resource_discovery_mode":{"type":"string","optional":true,"default":"ExistingNonCompliant"},"subscription_id":{"type":"string","required":true}}}},"azurerm_subscription_template_deployment":{"block":{"attributes":{"debug_level":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"output_content":{"type":"string","computed":true},"parameters_content":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"template_content":{"type":"string","optional":true,"computed":true,"exactly_one_of":["template_content","template_spec_version_id"]},"template_spec_version_id":{"type":"string","optional":true,"exactly_one_of":["template_content","template_spec_version_id"]}}}},"azurerm_synapse_firewall_rule":{"block":{"attributes":{"end_ip_address":{"type":"string","required":true},"name":{"type":"string","required":true},"start_ip_address":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true}}}},"azurerm_synapse_integration_runtime_azure":{"block":{"attributes":{"compute_type":{"type":"string","optional":true,"default":"General"},"core_count":{"type":"number","optional":true,"default":8},"description":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"time_to_live_min":{"type":"number","optional":true,"default":0}}}},"azurerm_synapse_integration_runtime_self_hosted":{"block":{"attributes":{"authorization_key_primary":{"type":"string","computed":true},"authorization_key_secondary":{"type":"string","computed":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true}}}},"azurerm_synapse_linked_service":{"block":{"attributes":{"additional_properties":{"type":["map","string"],"optional":true},"annotations":{"type":["list","string"],"optional":true},"description":{"type":"string","optional":true},"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true},"synapse_workspace_id":{"type":"string","required":true},"type":{"type":"string","required":true},"type_properties_json":{"type":"string","required":true}},"block_types":{"integration_runtime":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"parameters":{"type":["map","string"],"optional":true}}},"optional":true}}}},"azurerm_synapse_managed_private_endpoint":{"block":{"attributes":{"name":{"type":"string","required":true},"subresource_name":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true}}}},"azurerm_synapse_private_link_hub":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_synapse_role_assignment":{"block":{"attributes":{"principal_id":{"type":"string","required":true},"principal_type":{"type":"string","optional":true},"role_name":{"type":"string","required":true},"synapse_spark_pool_id":{"type":"string","optional":true,"exactly_one_of":["synapse_workspace_id","synapse_spark_pool_id"]},"synapse_workspace_id":{"type":"string","optional":true,"exactly_one_of":["synapse_workspace_id","synapse_spark_pool_id"]}}}},"azurerm_synapse_spark_pool":{"block":{"attributes":{"cache_size":{"type":"number","optional":true},"compute_isolation_enabled":{"type":"bool","optional":true,"default":false},"dynamic_executor_allocation_enabled":{"type":"bool","optional":true,"default":false},"max_executors":{"type":"number","optional":true},"min_executors":{"type":"number","optional":true},"name":{"type":"string","required":true},"node_count":{"type":"number","optional":true,"computed":true,"exactly_one_of":["node_count","auto_scale"]},"node_size":{"type":"string","required":true},"node_size_family":{"type":"string","required":true},"session_level_packages_enabled":{"type":"bool","optional":true,"default":false},"spark_events_folder":{"type":"string","optional":true,"default":"/events"},"spark_log_folder":{"type":"string","optional":true,"default":"/logs"},"spark_version":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"auto_pause":{"nesting_mode":3,"block":{"attributes":{"delay_in_minutes":{"type":"number","required":true}}},"optional":true},"auto_scale":{"nesting_mode":3,"block":{"attributes":{"max_node_count":{"type":"number","required":true},"min_node_count":{"type":"number","required":true}}},"optional":true,"exactly_one_of":["node_count","auto_scale"]},"library_requirement":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"filename":{"type":"string","required":true}}},"optional":true},"spark_config":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"filename":{"type":"string","required":true}}},"optional":true}}}},"azurerm_synapse_sql_pool":{"block":{"attributes":{"collation":{"type":"string","optional":true,"computed":true},"create_mode":{"type":"string","optional":true,"default":"Default"},"data_encrypted":{"type":"bool","optional":true},"geo_backup_policy_enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"recovery_database_id":{"type":"string","optional":true,"conflicts_with":["restore"]},"sku_name":{"type":"string","required":true},"storage_account_type":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"restore":{"nesting_mode":3,"block":{"attributes":{"point_in_time":{"type":"string","required":true},"source_database_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["recovery_database_id"]}}}},"azurerm_synapse_sql_pool_extended_auditing_policy":{"block":{"attributes":{"log_monitoring_enabled":{"type":"bool","optional":true,"default":true},"retention_in_days":{"type":"number","optional":true,"default":0},"sql_pool_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_account_access_key_is_secondary":{"type":"bool","optional":true,"default":false},"storage_endpoint":{"type":"string","optional":true}}}},"azurerm_synapse_sql_pool_security_alert_policy":{"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true},"email_account_admins_enabled":{"type":"bool","optional":true,"default":false},"email_addresses":{"type":["set","string"],"optional":true},"policy_state":{"type":"string","required":true},"retention_days":{"type":"number","optional":true,"default":0},"sql_pool_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_endpoint":{"type":"string","optional":true}}}},"azurerm_synapse_sql_pool_vulnerability_assessment":{"block":{"attributes":{"sql_pool_security_alert_policy_id":{"type":"string","required":true},"storage_account_access_key":{"type":"string","optional":true},"storage_container_path":{"type":"string","required":true},"storage_container_sas_key":{"type":"string","optional":true}},"block_types":{"recurring_scans":{"nesting_mode":3,"block":{"attributes":{"email_subscription_admins_enabled":{"type":"bool","optional":true,"default":true},"emails":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_synapse_sql_pool_vulnerability_assessment_baseline":{"block":{"attributes":{"name":{"type":"string","required":true},"rule_name":{"type":"string","required":true},"sql_pool_vulnerability_assessment_id":{"type":"string","required":true}},"block_types":{"baseline":{"nesting_mode":3,"block":{"attributes":{"result":{"type":["list","string"],"required":true}}},"optional":true}}}},"azurerm_synapse_sql_pool_workload_classifier":{"block":{"attributes":{"context":{"type":"string","optional":true},"end_time":{"type":"string","optional":true},"importance":{"type":"string","optional":true},"label":{"type":"string","optional":true},"member_name":{"type":"string","required":true},"name":{"type":"string","required":true},"start_time":{"type":"string","optional":true},"workload_group_id":{"type":"string","required":true}}}},"azurerm_synapse_sql_pool_workload_group":{"block":{"attributes":{"importance":{"type":"string","optional":true,"default":"normal"},"max_resource_percent":{"type":"number","required":true},"max_resource_percent_per_request":{"type":"number","optional":true,"default":3},"min_resource_percent":{"type":"number","required":true},"min_resource_percent_per_request":{"type":"number","optional":true},"name":{"type":"string","required":true},"query_execution_timeout_in_seconds":{"type":"number","optional":true},"sql_pool_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace":{"block":{"attributes":{"azuread_authentication_only":{"type":"bool","optional":true,"default":false},"compute_subnet_id":{"type":"string","optional":true},"connectivity_endpoints":{"type":["map","string"],"computed":true},"data_exfiltration_protection_enabled":{"type":"bool","optional":true},"linking_allowed_for_aad_tenant_ids":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"managed_resource_group_name":{"type":"string","optional":true,"computed":true},"managed_virtual_network_enabled":{"type":"bool","optional":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"purview_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"sql_administrator_login":{"type":"string","optional":true},"sql_administrator_login_password":{"type":"string","optional":true},"sql_identity_control_enabled":{"type":"bool","optional":true},"storage_data_lake_gen2_filesystem_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"azure_devops_repo":{"nesting_mode":3,"block":{"attributes":{"account_name":{"type":"string","required":true},"branch_name":{"type":"string","required":true},"last_commit_id":{"type":"string","optional":true},"project_name":{"type":"string","required":true},"repository_name":{"type":"string","required":true},"root_folder":{"type":"string","required":true},"tenant_id":{"type":"string","optional":true,"computed":true}}},"optional":true,"conflicts_with":["github_repo"]},"customer_managed_key":{"nesting_mode":3,"block":{"attributes":{"key_name":{"type":"string","optional":true,"default":"cmk"},"key_versionless_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"optional":true},"github_repo":{"nesting_mode":3,"block":{"attributes":{"account_name":{"type":"string","required":true},"branch_name":{"type":"string","required":true},"git_url":{"type":"string","optional":true},"last_commit_id":{"type":"string","optional":true},"repository_name":{"type":"string","required":true},"root_folder":{"type":"string","required":true}}},"optional":true,"conflicts_with":["azure_devops_repo"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_synapse_workspace_aad_admin":{"block":{"attributes":{"login":{"type":"string","required":true},"object_id":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace_extended_auditing_policy":{"block":{"attributes":{"log_monitoring_enabled":{"type":"bool","optional":true,"default":true},"retention_in_days":{"type":"number","optional":true,"default":0},"storage_account_access_key":{"type":"string","optional":true},"storage_account_access_key_is_secondary":{"type":"bool","optional":true,"default":false},"storage_endpoint":{"type":"string","optional":true},"synapse_workspace_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace_key":{"block":{"attributes":{"active":{"type":"bool","required":true},"customer_managed_key_name":{"type":"string","required":true},"customer_managed_key_versionless_id":{"type":"string","optional":true},"synapse_workspace_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace_security_alert_policy":{"block":{"attributes":{"disabled_alerts":{"type":["set","string"],"optional":true},"email_account_admins_enabled":{"type":"bool","optional":true,"default":false},"email_addresses":{"type":["set","string"],"optional":true},"policy_state":{"type":"string","required":true},"retention_days":{"type":"number","optional":true,"default":0},"storage_account_access_key":{"type":"string","optional":true},"storage_endpoint":{"type":"string","optional":true},"synapse_workspace_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace_sql_aad_admin":{"block":{"attributes":{"login":{"type":"string","required":true},"object_id":{"type":"string","required":true},"synapse_workspace_id":{"type":"string","required":true},"tenant_id":{"type":"string","required":true}}}},"azurerm_synapse_workspace_vulnerability_assessment":{"block":{"attributes":{"storage_account_access_key":{"type":"string","optional":true},"storage_container_path":{"type":"string","required":true},"storage_container_sas_key":{"type":"string","optional":true},"workspace_security_alert_policy_id":{"type":"string","required":true}},"block_types":{"recurring_scans":{"nesting_mode":3,"block":{"attributes":{"email_subscription_admins_enabled":{"type":"bool","optional":true,"default":true},"emails":{"type":["list","string"],"optional":true},"enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}}},"azurerm_system_center_virtual_machine_manager_availability_set":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"system_center_virtual_machine_manager_server_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_system_center_virtual_machine_manager_cloud":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"system_center_virtual_machine_manager_server_inventory_item_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_system_center_virtual_machine_manager_server":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"fqdn":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"password":{"type":"string","required":true},"port":{"type":"number","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"username":{"type":"string","required":true}}}},"azurerm_system_center_virtual_machine_manager_virtual_machine_instance":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"scoped_resource_id":{"type":"string","required":true},"system_center_virtual_machine_manager_availability_set_ids":{"type":["list","string"],"optional":true}},"block_types":{"hardware":{"nesting_mode":3,"block":{"attributes":{"cpu_count":{"type":"number","optional":true,"at_least_one_of":["hardware.0.cpu_count","hardware.0.dynamic_memory_max_in_mb","hardware.0.dynamic_memory_min_in_mb","hardware.0.limit_cpu_for_migration_enabled","hardware.0.memory_in_mb"]},"dynamic_memory_max_in_mb":{"type":"number","optional":true,"at_least_one_of":["hardware.0.cpu_count","hardware.0.dynamic_memory_max_in_mb","hardware.0.dynamic_memory_min_in_mb","hardware.0.limit_cpu_for_migration_enabled","hardware.0.memory_in_mb"]},"dynamic_memory_min_in_mb":{"type":"number","optional":true,"at_least_one_of":["hardware.0.cpu_count","hardware.0.dynamic_memory_max_in_mb","hardware.0.dynamic_memory_min_in_mb","hardware.0.limit_cpu_for_migration_enabled","hardware.0.memory_in_mb"]},"limit_cpu_for_migration_enabled":{"type":"bool","optional":true,"at_least_one_of":["hardware.0.cpu_count","hardware.0.dynamic_memory_max_in_mb","hardware.0.dynamic_memory_min_in_mb","hardware.0.limit_cpu_for_migration_enabled","hardware.0.memory_in_mb"]},"memory_in_mb":{"type":"number","optional":true,"at_least_one_of":["hardware.0.cpu_count","hardware.0.dynamic_memory_max_in_mb","hardware.0.dynamic_memory_min_in_mb","hardware.0.limit_cpu_for_migration_enabled","hardware.0.memory_in_mb"]}}},"optional":true},"infrastructure":{"nesting_mode":3,"block":{"attributes":{"checkpoint_type":{"type":"string","optional":true},"system_center_virtual_machine_manager_cloud_id":{"type":"string","optional":true,"at_least_one_of":["infrastructure.0.system_center_virtual_machine_manager_cloud_id","infrastructure.0.system_center_virtual_machine_manager_inventory_item_id","infrastructure.0.system_center_virtual_machine_manager_template_id","infrastructure.0.system_center_virtual_machine_manager_virtual_machine_server_id"],"required_with":["infrastructure.0.system_center_virtual_machine_manager_template_id"]},"system_center_virtual_machine_manager_inventory_item_id":{"type":"string","optional":true,"at_least_one_of":["infrastructure.0.system_center_virtual_machine_manager_cloud_id","infrastructure.0.system_center_virtual_machine_manager_inventory_item_id","infrastructure.0.system_center_virtual_machine_manager_template_id","infrastructure.0.system_center_virtual_machine_manager_virtual_machine_server_id"],"required_with":["infrastructure.0.system_center_virtual_machine_manager_virtual_machine_server_id"]},"system_center_virtual_machine_manager_template_id":{"type":"string","optional":true,"at_least_one_of":["infrastructure.0.system_center_virtual_machine_manager_cloud_id","infrastructure.0.system_center_virtual_machine_manager_inventory_item_id","infrastructure.0.system_center_virtual_machine_manager_template_id","infrastructure.0.system_center_virtual_machine_manager_virtual_machine_server_id"],"required_with":["infrastructure.0.system_center_virtual_machine_manager_cloud_id"]},"system_center_virtual_machine_manager_virtual_machine_server_id":{"type":"string","optional":true,"at_least_one_of":["infrastructure.0.system_center_virtual_machine_manager_cloud_id","infrastructure.0.system_center_virtual_machine_manager_inventory_item_id","infrastructure.0.system_center_virtual_machine_manager_template_id","infrastructure.0.system_center_virtual_machine_manager_virtual_machine_server_id"]}}},"required":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"ipv4_address_type":{"type":"string","optional":true},"ipv6_address_type":{"type":"string","optional":true},"mac_address_type":{"type":"string","optional":true},"name":{"type":"string","required":true},"virtual_network_id":{"type":"string","optional":true}}},"optional":true},"operating_system":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","optional":true,"at_least_one_of":["operating_system.0.computer_name","operating_system.0.admin_password"]},"computer_name":{"type":"string","optional":true,"at_least_one_of":["operating_system.0.computer_name","operating_system.0.admin_password"]}}},"optional":true},"storage_disk":{"nesting_mode":3,"block":{"attributes":{"bus":{"type":"number","optional":true},"bus_type":{"type":"string","optional":true},"disk_size_gb":{"type":"number","optional":true},"lun":{"type":"number","optional":true},"name":{"type":"string","optional":true},"storage_qos_policy_name":{"type":"string","optional":true},"template_disk_id":{"type":"string","optional":true},"vhd_type":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_system_center_virtual_machine_manager_virtual_machine_instance_guest_agent":{"block":{"attributes":{"password":{"type":"string","required":true},"provisioning_action":{"type":"string","optional":true,"default":"install"},"scoped_resource_id":{"type":"string","required":true},"username":{"type":"string","required":true}}}},"azurerm_system_center_virtual_machine_manager_virtual_machine_template":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"system_center_virtual_machine_manager_server_inventory_item_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_system_center_virtual_machine_manager_virtual_network":{"block":{"attributes":{"custom_location_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"system_center_virtual_machine_manager_server_inventory_item_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_tenant_template_deployment":{"block":{"attributes":{"debug_level":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"output_content":{"type":"string","computed":true},"parameters_content":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"template_content":{"type":"string","optional":true,"computed":true,"exactly_one_of":["template_content","template_spec_version_id"]},"template_spec_version_id":{"type":"string","optional":true,"exactly_one_of":["template_content","template_spec_version_id"]}}}},"azurerm_traffic_manager_azure_endpoint":{"block":{"attributes":{"always_serve_enabled":{"type":"bool","optional":true,"default":false},"enabled":{"type":"bool","optional":true,"default":true},"geo_mappings":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"computed":true},"profile_id":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"weight":{"type":"number","optional":true,"default":1}},"block_types":{"custom_header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"subnet":{"nesting_mode":3,"block":{"attributes":{"first":{"type":"string","required":true},"last":{"type":"string","optional":true},"scope":{"type":"number","optional":true}}},"optional":true}}}},"azurerm_traffic_manager_external_endpoint":{"block":{"attributes":{"always_serve_enabled":{"type":"bool","optional":true,"default":false},"enabled":{"type":"bool","optional":true,"default":true},"endpoint_location":{"type":"string","optional":true,"computed":true},"geo_mappings":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"computed":true},"profile_id":{"type":"string","required":true},"target":{"type":"string","required":true},"weight":{"type":"number","optional":true,"default":1}},"block_types":{"custom_header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"subnet":{"nesting_mode":3,"block":{"attributes":{"first":{"type":"string","required":true},"last":{"type":"string","optional":true},"scope":{"type":"number","optional":true}}},"optional":true}}}},"azurerm_traffic_manager_nested_endpoint":{"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"endpoint_location":{"type":"string","optional":true,"computed":true},"geo_mappings":{"type":["list","string"],"optional":true},"minimum_child_endpoints":{"type":"number","required":true},"minimum_required_child_endpoints_ipv4":{"type":"number","optional":true},"minimum_required_child_endpoints_ipv6":{"type":"number","optional":true},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"computed":true},"profile_id":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"weight":{"type":"number","optional":true,"default":1}},"block_types":{"custom_header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"subnet":{"nesting_mode":3,"block":{"attributes":{"first":{"type":"string","required":true},"last":{"type":"string","optional":true},"scope":{"type":"number","optional":true}}},"optional":true}}}},"azurerm_traffic_manager_profile":{"block":{"attributes":{"fqdn":{"type":"string","computed":true},"max_return":{"type":"number","optional":true},"name":{"type":"string","required":true},"profile_status":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"traffic_routing_method":{"type":"string","required":true},"traffic_view_enabled":{"type":"bool","optional":true}},"block_types":{"dns_config":{"nesting_mode":3,"block":{"attributes":{"relative_name":{"type":"string","required":true},"ttl":{"type":"number","required":true}}},"required":true},"monitor_config":{"nesting_mode":3,"block":{"attributes":{"expected_status_code_ranges":{"type":["list","string"],"optional":true},"interval_in_seconds":{"type":"number","optional":true,"default":30},"path":{"type":"string","optional":true},"port":{"type":"number","required":true},"protocol":{"type":"string","required":true},"timeout_in_seconds":{"type":"number","optional":true,"default":10},"tolerated_number_of_failures":{"type":"number","optional":true,"default":3}},"block_types":{"custom_header":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true}}},"required":true}}}},"azurerm_trusted_signing_account":{"block":{"attributes":{"account_uri":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_user_assigned_identity":{"block":{"attributes":{"client_id":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"principal_id":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tenant_id":{"type":"string","computed":true}}}},"azurerm_video_indexer_account":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"required":true},"storage":{"nesting_mode":3,"block":{"attributes":{"storage_account_id":{"type":"string","required":true},"user_assigned_identity_id":{"type":"string","optional":true}}},"required":true}}}},"azurerm_virtual_desktop_application":{"block":{"attributes":{"application_group_id":{"type":"string","required":true},"command_line_argument_policy":{"type":"string","required":true},"command_line_arguments":{"type":"string","optional":true},"description":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true,"computed":true},"icon_index":{"type":"number","optional":true},"icon_path":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"path":{"type":"string","required":true},"show_in_portal":{"type":"bool","optional":true}}}},"azurerm_virtual_desktop_application_group":{"block":{"attributes":{"default_desktop_display_name":{"type":"string","optional":true},"description":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true},"host_pool_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true}}}},"azurerm_virtual_desktop_host_pool":{"block":{"attributes":{"custom_rdp_properties":{"type":"string","optional":true},"description":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true},"load_balancer_type":{"type":"string","required":true},"location":{"type":"string","required":true},"maximum_sessions_allowed":{"type":"number","optional":true,"default":999999},"name":{"type":"string","required":true},"personal_desktop_assignment_type":{"type":"string","optional":true},"preferred_app_group_type":{"type":"string","optional":true,"default":"Desktop"},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"resource_group_name":{"type":"string","required":true},"start_vm_on_connect":{"type":"bool","optional":true,"default":false},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"validate_environment":{"type":"bool","optional":true,"default":false},"vm_template":{"type":"string","optional":true}},"block_types":{"scheduled_agent_updates":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":false},"timezone":{"type":"string","optional":true,"default":"UTC"},"use_session_host_timezone":{"type":"bool","optional":true,"default":false}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"day_of_week":{"type":"string","required":true},"hour_of_day":{"type":"number","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_virtual_desktop_host_pool_registration_info":{"block":{"attributes":{"expiration_date":{"type":"string","required":true},"hostpool_id":{"type":"string","required":true},"token":{"type":"string","computed":true}}}},"azurerm_virtual_desktop_scaling_plan":{"block":{"attributes":{"description":{"type":"string","optional":true},"exclusion_tag":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"time_zone":{"type":"string","required":true}},"block_types":{"host_pool":{"nesting_mode":3,"block":{"attributes":{"hostpool_id":{"type":"string","required":true},"scaling_plan_enabled":{"type":"bool","required":true}}},"optional":true,"computed":true},"schedule":{"nesting_mode":3,"block":{"attributes":{"days_of_week":{"type":["set","string"],"required":true},"name":{"type":"string","required":true},"off_peak_load_balancing_algorithm":{"type":"string","required":true},"off_peak_start_time":{"type":"string","required":true},"peak_load_balancing_algorithm":{"type":"string","required":true},"peak_start_time":{"type":"string","required":true},"ramp_down_capacity_threshold_percent":{"type":"number","required":true},"ramp_down_force_logoff_users":{"type":"bool","required":true},"ramp_down_load_balancing_algorithm":{"type":"string","required":true},"ramp_down_minimum_hosts_percent":{"type":"number","required":true},"ramp_down_notification_message":{"type":"string","required":true},"ramp_down_start_time":{"type":"string","required":true},"ramp_down_stop_hosts_when":{"type":"string","required":true},"ramp_down_wait_time_minutes":{"type":"number","required":true},"ramp_up_capacity_threshold_percent":{"type":"number","optional":true},"ramp_up_load_balancing_algorithm":{"type":"string","required":true},"ramp_up_minimum_hosts_percent":{"type":"number","optional":true},"ramp_up_start_time":{"type":"string","required":true}}},"required":true}}}},"azurerm_virtual_desktop_scaling_plan_host_pool_association":{"block":{"attributes":{"enabled":{"type":"bool","required":true},"host_pool_id":{"type":"string","required":true},"scaling_plan_id":{"type":"string","required":true}}}},"azurerm_virtual_desktop_workspace":{"block":{"attributes":{"description":{"type":"string","optional":true},"friendly_name":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_virtual_desktop_workspace_application_group_association":{"block":{"attributes":{"application_group_id":{"type":"string","required":true},"workspace_id":{"type":"string","required":true}}}},"azurerm_virtual_hub":{"block":{"attributes":{"address_prefix":{"type":"string","optional":true},"branch_to_branch_traffic_enabled":{"type":"bool","optional":true,"default":false},"default_route_table_id":{"type":"string","computed":true},"hub_routing_preference":{"type":"string","optional":true,"default":"ExpressRoute"},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_router_asn":{"type":"number","computed":true},"virtual_router_auto_scale_min_capacity":{"type":"number","optional":true,"default":2},"virtual_router_ips":{"type":["list","string"],"computed":true},"virtual_wan_id":{"type":"string","optional":true}},"block_types":{"route":{"nesting_mode":4,"block":{"attributes":{"address_prefixes":{"type":["list","string"],"required":true},"next_hop_ip_address":{"type":"string","required":true}}},"optional":true}}}},"azurerm_virtual_hub_bgp_connection":{"block":{"attributes":{"name":{"type":"string","required":true},"peer_asn":{"type":"number","required":true},"peer_ip":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true},"virtual_network_connection_id":{"type":"string","optional":true}}}},"azurerm_virtual_hub_connection":{"block":{"attributes":{"internet_security_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"remote_virtual_network_id":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}},"block_types":{"routing":{"nesting_mode":3,"block":{"attributes":{"associated_route_table_id":{"type":"string","optional":true,"computed":true,"at_least_one_of":["routing.0.associated_route_table_id","routing.0.propagated_route_table","routing.0.static_vnet_route"]},"inbound_route_map_id":{"type":"string","optional":true},"outbound_route_map_id":{"type":"string","optional":true},"static_vnet_local_route_override_criteria":{"type":"string","optional":true,"default":"Contains"},"static_vnet_propagate_static_routes_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"propagated_route_table":{"nesting_mode":3,"block":{"attributes":{"labels":{"type":["set","string"],"optional":true,"computed":true,"at_least_one_of":["routing.0.propagated_route_table.0.labels","routing.0.propagated_route_table.0.route_table_ids"]},"route_table_ids":{"type":["list","string"],"optional":true,"computed":true,"at_least_one_of":["routing.0.propagated_route_table.0.labels","routing.0.propagated_route_table.0.route_table_ids"]}}},"optional":true,"computed":true,"at_least_one_of":["routing.0.associated_route_table_id","routing.0.propagated_route_table","routing.0.static_vnet_route"]},"static_vnet_route":{"nesting_mode":3,"block":{"attributes":{"address_prefixes":{"type":["set","string"],"optional":true},"name":{"type":"string","optional":true},"next_hop_ip_address":{"type":"string","optional":true}}},"optional":true,"at_least_one_of":["routing.0.associated_route_table_id","routing.0.propagated_route_table","routing.0.static_vnet_route"]}}},"optional":true,"computed":true}}}},"azurerm_virtual_hub_ip":{"block":{"attributes":{"name":{"type":"string","required":true},"private_ip_address":{"type":"string","optional":true},"private_ip_allocation_method":{"type":"string","optional":true,"default":"Dynamic"},"public_ip_address_id":{"type":"string","required":true},"subnet_id":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}}}},"azurerm_virtual_hub_route_table":{"block":{"attributes":{"labels":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}},"block_types":{"route":{"nesting_mode":4,"block":{"attributes":{"destinations":{"type":["set","string"],"required":true},"destinations_type":{"type":"string","required":true},"name":{"type":"string","required":true},"next_hop":{"type":"string","required":true},"next_hop_type":{"type":"string","optional":true,"default":"ResourceId"}}},"optional":true,"computed":true}}}},"azurerm_virtual_hub_route_table_route":{"block":{"attributes":{"destinations":{"type":["set","string"],"required":true},"destinations_type":{"type":"string","required":true},"name":{"type":"string","required":true},"next_hop":{"type":"string","required":true},"next_hop_type":{"type":"string","optional":true,"default":"ResourceId"},"route_table_id":{"type":"string","required":true}}}},"azurerm_virtual_hub_routing_intent":{"block":{"attributes":{"name":{"type":"string","required":true},"virtual_hub_id":{"type":"string","required":true}},"block_types":{"routing_policy":{"nesting_mode":3,"block":{"attributes":{"destinations":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"next_hop":{"type":"string","required":true}}},"required":true}}}},"azurerm_virtual_hub_security_partner_provider":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"security_provider_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_hub_id":{"type":"string","optional":true}}}},"azurerm_virtual_machine":{"block":{"attributes":{"availability_set_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["zones"]},"delete_data_disks_on_termination":{"type":"bool","optional":true,"default":false},"delete_os_disk_on_termination":{"type":"bool","optional":true,"default":false},"license_type":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"network_interface_ids":{"type":["list","string"],"required":true},"primary_network_interface_id":{"type":"string","optional":true},"proximity_placement_group_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"vm_size":{"type":"string","required":true},"zones":{"type":["list","string"],"optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"ultra_ssd_enabled":{"type":"bool","required":true}}},"optional":true},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"storage_uri":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"os_profile":{"nesting_mode":4,"block":{"attributes":{"admin_password":{"type":"string","optional":true},"admin_username":{"type":"string","required":true},"computer_name":{"type":"string","required":true},"custom_data":{"type":"string","optional":true,"computed":true}}},"optional":true},"os_profile_linux_config":{"nesting_mode":4,"block":{"attributes":{"disable_password_authentication":{"type":"bool","required":true}},"block_types":{"ssh_keys":{"nesting_mode":3,"block":{"attributes":{"key_data":{"type":"string","required":true},"path":{"type":"string","required":true}}},"optional":true}}},"optional":true,"conflicts_with":["os_profile_windows_config"]},"os_profile_secrets":{"nesting_mode":3,"block":{"attributes":{"source_vault_id":{"type":"string","required":true}},"block_types":{"vault_certificates":{"nesting_mode":3,"block":{"attributes":{"certificate_store":{"type":"string","optional":true},"certificate_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"os_profile_windows_config":{"nesting_mode":4,"block":{"attributes":{"enable_automatic_upgrades":{"type":"bool","optional":true,"default":false},"provision_vm_agent":{"type":"bool","optional":true,"default":false},"timezone":{"type":"string","optional":true}},"block_types":{"additional_unattend_config":{"nesting_mode":3,"block":{"attributes":{"component":{"type":"string","required":true},"content":{"type":"string","required":true},"pass":{"type":"string","required":true},"setting_name":{"type":"string","required":true}}},"optional":true},"winrm":{"nesting_mode":3,"block":{"attributes":{"certificate_url":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"optional":true}}},"optional":true,"conflicts_with":["os_profile_linux_config"]},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"storage_data_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","optional":true,"computed":true},"create_option":{"type":"string","required":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"lun":{"type":"number","required":true},"managed_disk_id":{"type":"string","optional":true,"computed":true},"managed_disk_type":{"type":"string","optional":true,"computed":true},"name":{"type":"string","required":true},"vhd_uri":{"type":"string","optional":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true},"storage_image_reference":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","optional":true},"offer":{"type":"string","optional":true},"publisher":{"type":"string","optional":true},"sku":{"type":"string","optional":true},"version":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"storage_os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","optional":true,"computed":true},"create_option":{"type":"string","required":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"image_uri":{"type":"string","optional":true},"managed_disk_id":{"type":"string","optional":true,"computed":true,"conflicts_with":["storage_os_disk.0.vhd_uri"]},"managed_disk_type":{"type":"string","optional":true,"computed":true,"conflicts_with":["storage_os_disk.0.vhd_uri"]},"name":{"type":"string","required":true},"os_type":{"type":"string","optional":true,"computed":true},"vhd_uri":{"type":"string","optional":true,"conflicts_with":["storage_os_disk.0.managed_disk_id","storage_os_disk.0.managed_disk_type"]},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}},"required":true}}}},"azurerm_virtual_machine_automanage_configuration_assignment":{"block":{"attributes":{"configuration_id":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}}}},"azurerm_virtual_machine_data_disk_attachment":{"block":{"attributes":{"caching":{"type":"string","required":true},"create_option":{"type":"string","optional":true,"default":"Attach"},"lun":{"type":"number","required":true},"managed_disk_id":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}}},"azurerm_virtual_machine_extension":{"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true},"automatic_upgrade_enabled":{"type":"bool","optional":true},"failure_suppression_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true,"conflicts_with":["protected_settings_from_key_vault"]},"provision_after_extensions":{"type":["list","string"],"optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"protected_settings_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["protected_settings"]}}}},"azurerm_virtual_machine_gallery_application_assignment":{"block":{"attributes":{"configuration_blob_uri":{"type":"string","optional":true},"gallery_application_version_id":{"type":"string","required":true},"order":{"type":"number","optional":true,"default":0},"tag":{"type":"string","optional":true},"virtual_machine_id":{"type":"string","required":true}}}},"azurerm_virtual_machine_implicit_data_disk_from_source":{"block":{"attributes":{"caching":{"type":"string","optional":true},"create_option":{"type":"string","required":true},"disk_size_gb":{"type":"number","required":true},"lun":{"type":"number","required":true},"name":{"type":"string","required":true},"source_resource_id":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}}},"azurerm_virtual_machine_packet_capture":{"block":{"attributes":{"maximum_bytes_per_packet":{"type":"number","optional":true,"default":0},"maximum_bytes_per_session":{"type":"number","optional":true,"default":1073741824},"maximum_capture_duration_in_seconds":{"type":"number","optional":true,"default":18000},"name":{"type":"string","required":true},"network_watcher_id":{"type":"string","required":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"local_ip_address":{"type":"string","optional":true},"local_port":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"remote_ip_address":{"type":"string","optional":true},"remote_port":{"type":"string","optional":true}}},"optional":true},"storage_location":{"nesting_mode":3,"block":{"attributes":{"file_path":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_account_id":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_path":{"type":"string","computed":true}}},"required":true}}}},"azurerm_virtual_machine_restore_point":{"block":{"attributes":{"crash_consistency_mode_enabled":{"type":"bool","optional":true,"default":false},"excluded_disks":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"virtual_machine_restore_point_collection_id":{"type":"string","required":true}}}},"azurerm_virtual_machine_restore_point_collection":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"source_virtual_machine_id":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}}}},"azurerm_virtual_machine_run_command":{"block":{"attributes":{"error_blob_uri":{"type":"string","optional":true},"instance_view":{"type":["list",["object",{"end_time":"string","error_message":"string","execution_message":"string","execution_state":"string","exit_code":"number","output":"string","start_time":"string"}]],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"output_blob_uri":{"type":"string","optional":true},"run_as_password":{"type":"string","optional":true},"run_as_user":{"type":"string","optional":true},"tags":{"type":["map","string"],"optional":true},"virtual_machine_id":{"type":"string","required":true}},"block_types":{"error_blob_managed_identity":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true,"conflicts_with":["error_blob_managed_identity.0.object_id"]},"object_id":{"type":"string","optional":true,"conflicts_with":["error_blob_managed_identity.0.client_id"]}}},"optional":true,"required_with":["error_blob_uri"]},"output_blob_managed_identity":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true,"conflicts_with":["output_blob_managed_identity.0.object_id"]},"object_id":{"type":"string","optional":true,"conflicts_with":["output_blob_managed_identity.0.client_id"]}}},"optional":true,"required_with":["output_blob_uri"]},"parameter":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"protected_parameter":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"source":{"nesting_mode":3,"block":{"attributes":{"command_id":{"type":"string","optional":true,"exactly_one_of":["source.0.command_id","source.0.script","source.0.script_uri"]},"script":{"type":"string","optional":true,"exactly_one_of":["source.0.command_id","source.0.script","source.0.script_uri"]},"script_uri":{"type":"string","optional":true,"exactly_one_of":["source.0.command_id","source.0.script","source.0.script_uri"]}},"block_types":{"script_uri_managed_identity":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","optional":true,"conflicts_with":["source.0.script_uri_managed_identity.0.object_id"]},"object_id":{"type":"string","optional":true,"conflicts_with":["source.0.script_uri_managed_identity.0.client_id"]}}},"optional":true,"required_with":["source.0.script_uri"]}}},"required":true}}}},"azurerm_virtual_machine_scale_set":{"block":{"attributes":{"automatic_os_upgrade":{"type":"bool","optional":true,"default":false},"eviction_policy":{"type":"string","optional":true},"health_probe_id":{"type":"string","optional":true},"license_type":{"type":"string","optional":true,"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"overprovision":{"type":"bool","optional":true,"default":true},"priority":{"type":"string","optional":true},"proximity_placement_group_id":{"type":"string","optional":true},"resource_group_name":{"type":"string","required":true},"single_placement_group":{"type":"bool","optional":true,"default":true},"tags":{"type":["map","string"],"optional":true},"upgrade_policy_mode":{"type":"string","required":true},"zones":{"type":["list","string"],"optional":true}},"block_types":{"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"storage_uri":{"type":"string","required":true}}},"optional":true},"extension":{"nesting_mode":4,"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"provision_after_extensions":{"type":["set","string"],"optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_profile":{"nesting_mode":4,"block":{"attributes":{"accelerated_networking":{"type":"bool","optional":true},"ip_forwarding":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"network_security_group_id":{"type":"string","optional":true},"primary":{"type":"bool","required":true}},"block_types":{"dns_settings":{"nesting_mode":3,"block":{"attributes":{"dns_servers":{"type":["list","string"],"required":true}}},"optional":true},"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"application_gateway_backend_address_pool_ids":{"type":["set","string"],"optional":true},"application_security_group_ids":{"type":["set","string"],"optional":true},"load_balancer_backend_address_pool_ids":{"type":["set","string"],"optional":true},"load_balancer_inbound_nat_rules_ids":{"type":["set","string"],"optional":true,"computed":true},"name":{"type":"string","required":true},"primary":{"type":"bool","required":true},"subnet_id":{"type":"string","required":true}},"block_types":{"public_ip_address_configuration":{"nesting_mode":3,"block":{"attributes":{"domain_name_label":{"type":"string","required":true},"idle_timeout":{"type":"number","required":true},"name":{"type":"string","required":true}}},"optional":true}}},"required":true}}},"required":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"admin_password":{"type":"string","optional":true},"admin_username":{"type":"string","required":true},"computer_name_prefix":{"type":"string","required":true},"custom_data":{"type":"string","optional":true}}},"required":true},"os_profile_linux_config":{"nesting_mode":4,"block":{"attributes":{"disable_password_authentication":{"type":"bool","optional":true,"default":false}},"block_types":{"ssh_keys":{"nesting_mode":3,"block":{"attributes":{"key_data":{"type":"string","optional":true},"path":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"os_profile_secrets":{"nesting_mode":4,"block":{"attributes":{"source_vault_id":{"type":"string","required":true}},"block_types":{"vault_certificates":{"nesting_mode":3,"block":{"attributes":{"certificate_store":{"type":"string","optional":true},"certificate_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"os_profile_windows_config":{"nesting_mode":4,"block":{"attributes":{"enable_automatic_upgrades":{"type":"bool","optional":true},"provision_vm_agent":{"type":"bool","optional":true}},"block_types":{"additional_unattend_config":{"nesting_mode":3,"block":{"attributes":{"component":{"type":"string","required":true},"content":{"type":"string","required":true},"pass":{"type":"string","required":true},"setting_name":{"type":"string","required":true}}},"optional":true},"winrm":{"nesting_mode":3,"block":{"attributes":{"certificate_url":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"optional":true}}},"optional":true},"plan":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"rolling_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"max_batch_instance_percent":{"type":"number","optional":true,"default":20},"max_unhealthy_instance_percent":{"type":"number","optional":true,"default":20},"max_unhealthy_upgraded_instance_percent":{"type":"number","optional":true,"default":20},"pause_time_between_batches":{"type":"string","optional":true,"default":"PT0S"}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","required":true},"name":{"type":"string","required":true},"tier":{"type":"string","optional":true,"computed":true}}},"required":true},"storage_profile_data_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","optional":true,"computed":true},"create_option":{"type":"string","required":true},"disk_size_gb":{"type":"number","optional":true,"computed":true},"lun":{"type":"number","required":true},"managed_disk_type":{"type":"string","optional":true,"computed":true}}},"optional":true},"storage_profile_image_reference":{"nesting_mode":4,"block":{"attributes":{"id":{"type":"string","optional":true},"offer":{"type":"string","optional":true},"publisher":{"type":"string","optional":true},"sku":{"type":"string","optional":true},"version":{"type":"string","optional":true}}},"optional":true,"computed":true},"storage_profile_os_disk":{"nesting_mode":4,"block":{"attributes":{"caching":{"type":"string","optional":true,"computed":true},"create_option":{"type":"string","required":true},"image":{"type":"string","optional":true},"managed_disk_type":{"type":"string","optional":true,"computed":true},"name":{"type":"string","optional":true},"os_type":{"type":"string","optional":true},"vhd_containers":{"type":["set","string"],"optional":true}}},"required":true}}}},"azurerm_virtual_machine_scale_set_extension":{"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true,"default":true},"automatic_upgrade_enabled":{"type":"bool","optional":true},"failure_suppression_enabled":{"type":"bool","optional":true,"default":false},"force_update_tag":{"type":"string","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"provision_after_extensions":{"type":["list","string"],"optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true},"virtual_machine_scale_set_id":{"type":"string","required":true}},"block_types":{"protected_settings_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["protected_settings"]}}}},"azurerm_virtual_machine_scale_set_packet_capture":{"block":{"attributes":{"maximum_bytes_per_packet":{"type":"number","optional":true,"default":0},"maximum_bytes_per_session":{"type":"number","optional":true,"default":1073741824},"maximum_capture_duration_in_seconds":{"type":"number","optional":true,"default":18000},"name":{"type":"string","required":true},"network_watcher_id":{"type":"string","required":true},"virtual_machine_scale_set_id":{"type":"string","required":true}},"block_types":{"filter":{"nesting_mode":3,"block":{"attributes":{"local_ip_address":{"type":"string","optional":true},"local_port":{"type":"string","optional":true},"protocol":{"type":"string","required":true},"remote_ip_address":{"type":"string","optional":true},"remote_port":{"type":"string","optional":true}}},"optional":true},"machine_scope":{"nesting_mode":3,"block":{"attributes":{"exclude_instance_ids":{"type":["list","string"],"optional":true,"conflicts_with":["machine_scope.0.include_instance_ids"]},"include_instance_ids":{"type":["list","string"],"optional":true,"conflicts_with":["machine_scope.0.exclude_instance_ids"]}}},"optional":true},"storage_location":{"nesting_mode":3,"block":{"attributes":{"file_path":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_account_id":{"type":"string","optional":true,"at_least_one_of":["storage_location.0.file_path","storage_location.0.storage_account_id"]},"storage_path":{"type":"string","computed":true}}},"required":true}}}},"azurerm_virtual_machine_scale_set_standby_pool":{"block":{"attributes":{"attached_virtual_machine_scale_set_id":{"type":"string","required":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_machine_state":{"type":"string","required":true}},"block_types":{"elasticity_profile":{"nesting_mode":3,"block":{"attributes":{"max_ready_capacity":{"type":"number","required":true},"min_ready_capacity":{"type":"number","required":true}}},"required":true}}}},"azurerm_virtual_network":{"block":{"attributes":{"address_space":{"type":["set","string"],"optional":true,"exactly_one_of":["address_space","ip_address_pool"]},"bgp_community":{"type":"string","optional":true},"dns_servers":{"type":["list","string"],"optional":true,"computed":true},"edge_zone":{"type":"string","optional":true},"flow_timeout_in_minutes":{"type":"number","optional":true},"guid":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_endpoint_vnet_policies":{"type":"string","optional":true,"default":"Disabled"},"resource_group_name":{"type":"string","required":true},"subnet":{"type":["set",["object",{"address_prefixes":["list","string"],"default_outbound_access_enabled":"bool","delegation":["list",["object",{"name":"string","service_delegation":["list",["object",{"actions":["set","string"],"name":"string"}]]}]],"id":"string","name":"string","private_endpoint_network_policies":"string","private_link_service_network_policies_enabled":"bool","route_table_id":"string","security_group":"string","service_endpoint_policy_ids":["set","string"],"service_endpoints":["set","string"]}]],"optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"ddos_protection_plan":{"nesting_mode":3,"block":{"attributes":{"enable":{"type":"bool","required":true},"id":{"type":"string","required":true}}},"optional":true},"encryption":{"nesting_mode":3,"block":{"attributes":{"enforcement":{"type":"string","required":true}}},"optional":true},"ip_address_pool":{"nesting_mode":3,"block":{"attributes":{"allocated_ip_address_prefixes":{"type":["list","string"],"computed":true},"id":{"type":"string","required":true},"number_of_ip_addresses":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["address_space","ip_address_pool"]}}}},"azurerm_virtual_network_dns_servers":{"block":{"attributes":{"dns_servers":{"type":["list","string"],"optional":true},"virtual_network_id":{"type":"string","required":true}}}},"azurerm_virtual_network_gateway":{"block":{"attributes":{"active_active":{"type":"bool","optional":true,"computed":true},"bgp_route_translation_for_nat_enabled":{"type":"bool","optional":true,"default":false},"default_local_network_gateway_id":{"type":"string","optional":true},"dns_forwarding_enabled":{"type":"bool","optional":true},"edge_zone":{"type":"string","optional":true},"enable_bgp":{"type":"bool","optional":true,"computed":true},"generation":{"type":"string","optional":true,"computed":true},"ip_sec_replay_protection_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"private_ip_address_enabled":{"type":"bool","optional":true},"remote_vnet_traffic_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"virtual_wan_traffic_enabled":{"type":"bool","optional":true,"default":false},"vpn_type":{"type":"string","optional":true,"default":"RouteBased"}},"block_types":{"bgp_settings":{"nesting_mode":3,"block":{"attributes":{"asn":{"type":"number","optional":true,"at_least_one_of":["bgp_settings.0.asn","bgp_settings.0.peer_weight","bgp_settings.0.peering_addresses"]},"peer_weight":{"type":"number","optional":true,"at_least_one_of":["bgp_settings.0.asn","bgp_settings.0.peer_weight","bgp_settings.0.peering_addresses"]}},"block_types":{"peering_addresses":{"nesting_mode":3,"block":{"attributes":{"apipa_addresses":{"type":["list","string"],"optional":true},"default_addresses":{"type":["list","string"],"computed":true},"ip_configuration_name":{"type":"string","optional":true,"computed":true},"tunnel_ip_addresses":{"type":["list","string"],"computed":true}}},"optional":true,"computed":true,"at_least_one_of":["bgp_settings.0.asn","bgp_settings.0.peer_weight","bgp_settings.0.peering_addresses"]}}},"optional":true,"computed":true},"custom_route":{"nesting_mode":3,"block":{"attributes":{"address_prefixes":{"type":["set","string"],"optional":true}}},"optional":true},"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","optional":true,"default":"vnetGatewayConfig"},"private_ip_address_allocation":{"type":"string","optional":true,"default":"Dynamic"},"public_ip_address_id":{"type":"string","optional":true},"subnet_id":{"type":"string","required":true}}},"required":true},"policy_group":{"nesting_mode":3,"block":{"attributes":{"is_default":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":0}},"block_types":{"policy_member":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}},"optional":true},"vpn_client_configuration":{"nesting_mode":3,"block":{"attributes":{"aad_audience":{"type":"string","optional":true,"required_with":["vpn_client_configuration.0.aad_issuer","vpn_client_configuration.0.aad_tenant"]},"aad_issuer":{"type":"string","optional":true,"required_with":["vpn_client_configuration.0.aad_audience","vpn_client_configuration.0.aad_tenant"]},"aad_tenant":{"type":"string","optional":true,"required_with":["vpn_client_configuration.0.aad_audience","vpn_client_configuration.0.aad_issuer"]},"address_space":{"type":["list","string"],"required":true},"radius_server_address":{"type":"string","optional":true,"required_with":["vpn_client_configuration.0.radius_server_secret"]},"radius_server_secret":{"type":"string","optional":true,"required_with":["vpn_client_configuration.0.radius_server_address"]},"vpn_auth_types":{"type":["set","string"],"optional":true,"computed":true},"vpn_client_protocols":{"type":["set","string"],"optional":true,"computed":true}},"block_types":{"ipsec_policy":{"nesting_mode":3,"block":{"attributes":{"dh_group":{"type":"string","required":true},"ike_encryption":{"type":"string","required":true},"ike_integrity":{"type":"string","required":true},"ipsec_encryption":{"type":"string","required":true},"ipsec_integrity":{"type":"string","required":true},"pfs_group":{"type":"string","required":true},"sa_data_size_in_kilobytes":{"type":"number","required":true},"sa_lifetime_in_seconds":{"type":"number","required":true}}},"optional":true},"radius_server":{"nesting_mode":3,"block":{"attributes":{"address":{"type":"string","required":true},"score":{"type":"number","required":true},"secret":{"type":"string","required":true}}},"optional":true},"revoked_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"thumbprint":{"type":"string","required":true}}},"optional":true},"root_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"public_cert_data":{"type":"string","required":true}}},"optional":true},"virtual_network_gateway_client_connection":{"nesting_mode":3,"block":{"attributes":{"address_prefixes":{"type":["list","string"],"required":true},"name":{"type":"string","required":true},"policy_group_names":{"type":["list","string"],"required":true}}},"optional":true}}},"optional":true}}}},"azurerm_virtual_network_gateway_connection":{"block":{"attributes":{"authorization_key":{"type":"string","optional":true},"connection_mode":{"type":"string","optional":true,"default":"Default"},"connection_protocol":{"type":"string","optional":true,"computed":true},"dpd_timeout_seconds":{"type":"number","optional":true},"egress_nat_rule_ids":{"type":["set","string"],"optional":true},"enable_bgp":{"type":"bool","optional":true,"computed":true},"express_route_circuit_id":{"type":"string","optional":true},"express_route_gateway_bypass":{"type":"bool","optional":true,"computed":true},"ingress_nat_rule_ids":{"type":["set","string"],"optional":true},"local_azure_ip_address_enabled":{"type":"bool","optional":true},"local_network_gateway_id":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"peer_virtual_network_gateway_id":{"type":"string","optional":true},"private_link_fast_path_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"routing_weight":{"type":"number","optional":true,"computed":true},"shared_key":{"type":"string","optional":true,"computed":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","required":true},"use_policy_based_traffic_selectors":{"type":"bool","optional":true,"computed":true},"virtual_network_gateway_id":{"type":"string","required":true}},"block_types":{"custom_bgp_addresses":{"nesting_mode":3,"block":{"attributes":{"primary":{"type":"string","required":true},"secondary":{"type":"string","optional":true}}},"optional":true},"ipsec_policy":{"nesting_mode":3,"block":{"attributes":{"dh_group":{"type":"string","required":true},"ike_encryption":{"type":"string","required":true},"ike_integrity":{"type":"string","required":true},"ipsec_encryption":{"type":"string","required":true},"ipsec_integrity":{"type":"string","required":true},"pfs_group":{"type":"string","required":true},"sa_datasize":{"type":"number","optional":true,"computed":true},"sa_lifetime":{"type":"number","optional":true,"computed":true}}},"optional":true},"traffic_selector_policy":{"nesting_mode":3,"block":{"attributes":{"local_address_cidrs":{"type":["list","string"],"required":true},"remote_address_cidrs":{"type":["list","string"],"required":true}}},"optional":true}}}},"azurerm_virtual_network_gateway_nat_rule":{"block":{"attributes":{"ip_configuration_id":{"type":"string","optional":true},"mode":{"type":"string","optional":true,"default":"EgressSnat"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"type":{"type":"string","optional":true,"default":"Static"},"virtual_network_gateway_id":{"type":"string","required":true}},"block_types":{"external_mapping":{"nesting_mode":3,"block":{"attributes":{"address_space":{"type":"string","required":true},"port_range":{"type":"string","optional":true}}},"required":true},"internal_mapping":{"nesting_mode":3,"block":{"attributes":{"address_space":{"type":"string","required":true},"port_range":{"type":"string","optional":true}}},"required":true}}}},"azurerm_virtual_network_peering":{"block":{"attributes":{"allow_forwarded_traffic":{"type":"bool","optional":true,"default":false},"allow_gateway_transit":{"type":"bool","optional":true,"default":false},"allow_virtual_network_access":{"type":"bool","optional":true,"default":true},"local_subnet_names":{"type":["list","string"],"optional":true},"name":{"type":"string","required":true},"only_ipv6_peering_enabled":{"type":"bool","optional":true},"peer_complete_virtual_networks_enabled":{"type":"bool","optional":true,"default":true},"remote_subnet_names":{"type":["list","string"],"optional":true},"remote_virtual_network_id":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"triggers":{"type":["map","string"],"optional":true},"use_remote_gateways":{"type":"bool","optional":true,"default":false},"virtual_network_name":{"type":"string","required":true}}}},"azurerm_virtual_wan":{"block":{"attributes":{"allow_branch_to_branch_traffic":{"type":"bool","optional":true,"default":true},"disable_vpn_encryption":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"office365_local_breakout_category":{"type":"string","optional":true,"default":"None"},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"type":{"type":"string","optional":true,"default":"Standard"}}}},"azurerm_vmware_cluster":{"block":{"attributes":{"cluster_node_count":{"type":"number","required":true},"cluster_number":{"type":"number","computed":true},"hosts":{"type":["list","string"],"computed":true},"name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"vmware_cloud_id":{"type":"string","required":true}}}},"azurerm_vmware_express_route_authorization":{"block":{"attributes":{"express_route_authorization_id":{"type":"string","computed":true},"express_route_authorization_key":{"type":"string","computed":true},"name":{"type":"string","required":true},"private_cloud_id":{"type":"string","required":true}}}},"azurerm_vmware_netapp_volume_attachment":{"block":{"attributes":{"name":{"type":"string","required":true},"netapp_volume_id":{"type":"string","required":true},"vmware_cluster_id":{"type":"string","required":true}}}},"azurerm_vmware_private_cloud":{"block":{"attributes":{"circuit":{"type":["list",["object",{"express_route_id":"string","express_route_private_peering_id":"string","primary_subnet_cidr":"string","secondary_subnet_cidr":"string"}]],"computed":true},"hcx_cloud_manager_endpoint":{"type":"string","computed":true},"internet_connection_enabled":{"type":"bool","optional":true,"default":false},"location":{"type":"string","required":true},"management_subnet_cidr":{"type":"string","computed":true},"name":{"type":"string","required":true},"network_subnet_cidr":{"type":"string","required":true},"nsxt_certificate_thumbprint":{"type":"string","computed":true},"nsxt_manager_endpoint":{"type":"string","computed":true},"nsxt_password":{"type":"string","optional":true},"provisioning_subnet_cidr":{"type":"string","computed":true},"resource_group_name":{"type":"string","required":true},"sku_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"vcenter_certificate_thumbprint":{"type":"string","computed":true},"vcenter_password":{"type":"string","optional":true},"vcsa_endpoint":{"type":"string","computed":true},"vmotion_subnet_cidr":{"type":"string","computed":true}},"block_types":{"management_cluster":{"nesting_mode":3,"block":{"attributes":{"hosts":{"type":["list","string"],"computed":true},"id":{"type":"number","computed":true},"size":{"type":"number","required":true}}},"required":true}}}},"azurerm_voice_services_communications_gateway":{"block":{"attributes":{"api_bridge":{"type":"string","optional":true},"auto_generated_domain_name_label_scope":{"type":"string","optional":true,"default":"TenantReuse"},"codecs":{"type":"string","required":true},"connectivity":{"type":"string","required":true},"e911_type":{"type":"string","required":true},"emergency_dial_strings":{"type":["list","string"],"optional":true},"location":{"type":"string","required":true},"microsoft_teams_voicemail_pilot_number":{"type":"string","optional":true},"name":{"type":"string","required":true},"on_prem_mcp_enabled":{"type":"bool","optional":true},"platforms":{"type":["list","string"],"required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"service_location":{"nesting_mode":4,"block":{"attributes":{"allowed_media_source_address_prefixes":{"type":["set","string"],"optional":true},"allowed_signaling_source_address_prefixes":{"type":["set","string"],"optional":true},"esrp_addresses":{"type":["set","string"],"optional":true},"location":{"type":"string","required":true},"operator_addresses":{"type":["set","string"],"required":true}}},"required":true}}}},"azurerm_voice_services_communications_gateway_test_line":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"phone_number":{"type":"string","required":true},"purpose":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"voice_services_communications_gateway_id":{"type":"string","required":true}}}},"azurerm_vpn_gateway":{"block":{"attributes":{"bgp_route_translation_for_nat_enabled":{"type":"bool","optional":true,"default":false},"ip_configuration":{"type":["list",["object",{"id":"string","private_ip_address":"string","public_ip_address":"string"}]],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"routing_preference":{"type":"string","optional":true,"default":"Microsoft Network"},"scale_unit":{"type":"number","optional":true,"default":1},"tags":{"type":["map","string"],"optional":true},"virtual_hub_id":{"type":"string","required":true}},"block_types":{"bgp_settings":{"nesting_mode":3,"block":{"attributes":{"asn":{"type":"number","required":true},"bgp_peering_address":{"type":"string","computed":true},"peer_weight":{"type":"number","required":true}},"block_types":{"instance_0_bgp_peering_address":{"nesting_mode":3,"block":{"attributes":{"custom_ips":{"type":["set","string"],"required":true},"default_ips":{"type":["set","string"],"computed":true},"ip_configuration_id":{"type":"string","computed":true},"tunnel_ips":{"type":["set","string"],"computed":true}}},"optional":true,"computed":true},"instance_1_bgp_peering_address":{"nesting_mode":3,"block":{"attributes":{"custom_ips":{"type":["set","string"],"required":true},"default_ips":{"type":["set","string"],"computed":true},"ip_configuration_id":{"type":"string","computed":true},"tunnel_ips":{"type":["set","string"],"computed":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_vpn_gateway_connection":{"block":{"attributes":{"internet_security_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"remote_vpn_site_id":{"type":"string","required":true},"vpn_gateway_id":{"type":"string","required":true}},"block_types":{"routing":{"nesting_mode":3,"block":{"attributes":{"associated_route_table":{"type":"string","required":true},"inbound_route_map_id":{"type":"string","optional":true},"outbound_route_map_id":{"type":"string","optional":true}},"block_types":{"propagated_route_table":{"nesting_mode":3,"block":{"attributes":{"labels":{"type":["set","string"],"optional":true},"route_table_ids":{"type":["list","string"],"required":true}}},"optional":true,"computed":true}}},"optional":true,"computed":true},"traffic_selector_policy":{"nesting_mode":4,"block":{"attributes":{"local_address_ranges":{"type":["set","string"],"required":true},"remote_address_ranges":{"type":["set","string"],"required":true}}},"optional":true},"vpn_link":{"nesting_mode":3,"block":{"attributes":{"bandwidth_mbps":{"type":"number","optional":true,"default":10},"bgp_enabled":{"type":"bool","optional":true,"default":false},"connection_mode":{"type":"string","optional":true,"default":"Default"},"dpd_timeout_seconds":{"type":"number","optional":true},"egress_nat_rule_ids":{"type":["set","string"],"optional":true},"ingress_nat_rule_ids":{"type":["set","string"],"optional":true},"local_azure_ip_address_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"policy_based_traffic_selector_enabled":{"type":"bool","optional":true,"default":false},"protocol":{"type":"string","optional":true,"default":"IKEv2"},"ratelimit_enabled":{"type":"bool","optional":true,"default":false},"route_weight":{"type":"number","optional":true,"default":0},"shared_key":{"type":"string","optional":true,"computed":true},"vpn_site_link_id":{"type":"string","required":true}},"block_types":{"custom_bgp_address":{"nesting_mode":4,"block":{"attributes":{"ip_address":{"type":"string","required":true},"ip_configuration_id":{"type":"string","required":true}}},"optional":true},"ipsec_policy":{"nesting_mode":3,"block":{"attributes":{"dh_group":{"type":"string","required":true},"encryption_algorithm":{"type":"string","required":true},"ike_encryption_algorithm":{"type":"string","required":true},"ike_integrity_algorithm":{"type":"string","required":true},"integrity_algorithm":{"type":"string","required":true},"pfs_group":{"type":"string","required":true},"sa_data_size_kb":{"type":"number","required":true},"sa_lifetime_sec":{"type":"number","required":true}}},"optional":true}}},"required":true}}}},"azurerm_vpn_gateway_nat_rule":{"block":{"attributes":{"ip_configuration_id":{"type":"string","optional":true},"mode":{"type":"string","optional":true,"default":"EgressSnat"},"name":{"type":"string","required":true},"type":{"type":"string","optional":true,"default":"Static"},"vpn_gateway_id":{"type":"string","required":true}},"block_types":{"external_mapping":{"nesting_mode":3,"block":{"attributes":{"address_space":{"type":"string","required":true},"port_range":{"type":"string","optional":true}}},"optional":true},"internal_mapping":{"nesting_mode":3,"block":{"attributes":{"address_space":{"type":"string","required":true},"port_range":{"type":"string","optional":true}}},"optional":true}}}},"azurerm_vpn_server_configuration":{"block":{"attributes":{"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"vpn_authentication_types":{"type":["list","string"],"required":true},"vpn_protocols":{"type":["set","string"],"optional":true,"computed":true}},"block_types":{"azure_active_directory_authentication":{"nesting_mode":3,"block":{"attributes":{"audience":{"type":"string","required":true},"issuer":{"type":"string","required":true},"tenant":{"type":"string","required":true}}},"optional":true},"client_revoked_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"thumbprint":{"type":"string","required":true}}},"optional":true},"client_root_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"public_cert_data":{"type":"string","required":true}}},"optional":true},"ipsec_policy":{"nesting_mode":3,"block":{"attributes":{"dh_group":{"type":"string","required":true},"ike_encryption":{"type":"string","required":true},"ike_integrity":{"type":"string","required":true},"ipsec_encryption":{"type":"string","required":true},"ipsec_integrity":{"type":"string","required":true},"pfs_group":{"type":"string","required":true},"sa_data_size_kilobytes":{"type":"number","required":true},"sa_lifetime_seconds":{"type":"number","required":true}}},"optional":true},"radius":{"nesting_mode":3,"block":{"block_types":{"client_root_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"thumbprint":{"type":"string","required":true}}},"optional":true},"server":{"nesting_mode":3,"block":{"attributes":{"address":{"type":"string","required":true},"score":{"type":"number","required":true},"secret":{"type":"string","required":true}}},"optional":true},"server_root_certificate":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"public_cert_data":{"type":"string","required":true}}},"optional":true}}},"optional":true}}}},"azurerm_vpn_server_configuration_policy_group":{"block":{"attributes":{"is_default":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"priority":{"type":"number","optional":true,"default":0},"vpn_server_configuration_id":{"type":"string","required":true}},"block_types":{"policy":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"required":true}}}},"azurerm_vpn_site":{"block":{"attributes":{"address_cidrs":{"type":["set","string"],"optional":true},"device_model":{"type":"string","optional":true},"device_vendor":{"type":"string","optional":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"virtual_wan_id":{"type":"string","required":true}},"block_types":{"link":{"nesting_mode":3,"block":{"attributes":{"fqdn":{"type":"string","optional":true},"id":{"type":"string","computed":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","required":true},"provider_name":{"type":"string","optional":true},"speed_in_mbps":{"type":"number","optional":true,"default":0}},"block_types":{"bgp":{"nesting_mode":3,"block":{"attributes":{"asn":{"type":"number","required":true},"peering_address":{"type":"string","required":true}}},"optional":true}}},"optional":true},"o365_policy":{"nesting_mode":3,"block":{"block_types":{"traffic_category":{"nesting_mode":3,"block":{"attributes":{"allow_endpoint_enabled":{"type":"bool","optional":true,"default":false},"default_endpoint_enabled":{"type":"bool","optional":true,"default":false},"optimize_endpoint_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true,"computed":true}}},"optional":true,"computed":true}}}},"azurerm_web_app_active_slot":{"block":{"attributes":{"last_successful_swap":{"type":"string","computed":true},"overwrite_network_config":{"type":"bool","optional":true,"default":true},"slot_id":{"type":"string","required":true}}}},"azurerm_web_app_hybrid_connection":{"block":{"attributes":{"hostname":{"type":"string","required":true},"namespace_name":{"type":"string","computed":true},"port":{"type":"number","required":true},"relay_id":{"type":"string","required":true},"relay_name":{"type":"string","computed":true},"send_key_name":{"type":"string","optional":true,"default":"RootManageSharedAccessKey"},"send_key_value":{"type":"string","computed":true},"service_bus_namespace":{"type":"string","computed":true},"service_bus_suffix":{"type":"string","computed":true},"web_app_id":{"type":"string","required":true}}}},"azurerm_web_application_firewall_policy":{"block":{"attributes":{"http_listener_ids":{"type":["list","string"],"computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"path_based_rule_ids":{"type":["list","string"],"computed":true},"resource_group_name":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"custom_rules":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","required":true},"enabled":{"type":"bool","optional":true,"default":true},"group_rate_limit_by":{"type":"string","optional":true},"name":{"type":"string","optional":true},"priority":{"type":"number","required":true},"rate_limit_duration":{"type":"string","optional":true},"rate_limit_threshold":{"type":"number","optional":true},"rule_type":{"type":"string","required":true}},"block_types":{"match_conditions":{"nesting_mode":3,"block":{"attributes":{"match_values":{"type":["list","string"],"optional":true},"negation_condition":{"type":"bool","optional":true},"operator":{"type":"string","required":true},"transforms":{"type":["set","string"],"optional":true}},"block_types":{"match_variables":{"nesting_mode":3,"block":{"attributes":{"selector":{"type":"string","optional":true},"variable_name":{"type":"string","required":true}}},"required":true}}},"required":true}}},"optional":true},"managed_rules":{"nesting_mode":3,"block":{"block_types":{"exclusion":{"nesting_mode":3,"block":{"attributes":{"match_variable":{"type":"string","required":true},"selector":{"type":"string","required":true},"selector_match_operator":{"type":"string","required":true}},"block_types":{"excluded_rule_set":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","optional":true,"default":"OWASP"},"version":{"type":"string","optional":true,"default":"3.2"}},"block_types":{"rule_group":{"nesting_mode":3,"block":{"attributes":{"excluded_rules":{"type":["list","string"],"optional":true},"rule_group_name":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"managed_rule_set":{"nesting_mode":3,"block":{"attributes":{"type":{"type":"string","optional":true,"default":"OWASP"},"version":{"type":"string","required":true}},"block_types":{"rule_group_override":{"nesting_mode":3,"block":{"attributes":{"rule_group_name":{"type":"string","required":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true},"enabled":{"type":"bool","optional":true,"default":false},"id":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"required":true}}},"required":true},"policy_settings":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"file_upload_enforcement":{"type":"bool","optional":true,"computed":true},"file_upload_limit_in_mb":{"type":"number","optional":true,"default":100},"js_challenge_cookie_expiration_in_minutes":{"type":"number","optional":true,"default":30},"max_request_body_size_in_kb":{"type":"number","optional":true,"default":128},"mode":{"type":"string","optional":true,"default":"Prevention"},"request_body_check":{"type":"bool","optional":true,"default":true},"request_body_enforcement":{"type":"bool","optional":true,"default":true},"request_body_inspect_limit_in_kb":{"type":"number","optional":true,"default":128}},"block_types":{"log_scrubbing":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"rule":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"match_variable":{"type":"string","required":true},"selector":{"type":"string","optional":true},"selector_match_operator":{"type":"string","optional":true,"default":"Equals"}}},"optional":true}}},"optional":true}}},"optional":true}}}},"azurerm_web_pubsub":{"block":{"attributes":{"aad_auth_enabled":{"type":"bool","optional":true,"default":true},"capacity":{"type":"number","optional":true,"default":1},"external_ip":{"type":"string","computed":true},"hostname":{"type":"string","computed":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"public_port":{"type":"number","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"server_port":{"type":"number","computed":true},"sku":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true},"tls_client_cert_enabled":{"type":"bool","optional":true,"default":false},"version":{"type":"string","computed":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"live_trace":{"nesting_mode":3,"block":{"attributes":{"connectivity_logs_enabled":{"type":"bool","optional":true,"default":true},"enabled":{"type":"bool","optional":true,"default":true},"http_request_logs_enabled":{"type":"bool","optional":true,"default":true},"messaging_logs_enabled":{"type":"bool","optional":true,"default":true}}},"optional":true}}}},"azurerm_web_pubsub_custom_certificate":{"block":{"attributes":{"certificate_version":{"type":"string","computed":true},"custom_certificate_id":{"type":"string","required":true},"name":{"type":"string","required":true},"web_pubsub_id":{"type":"string","required":true}}}},"azurerm_web_pubsub_custom_domain":{"block":{"attributes":{"domain_name":{"type":"string","required":true},"name":{"type":"string","required":true},"web_pubsub_custom_certificate_id":{"type":"string","required":true},"web_pubsub_id":{"type":"string","required":true}}}},"azurerm_web_pubsub_hub":{"block":{"attributes":{"anonymous_connections_enabled":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"web_pubsub_id":{"type":"string","required":true}},"block_types":{"event_handler":{"nesting_mode":3,"block":{"attributes":{"system_events":{"type":["set","string"],"optional":true},"url_template":{"type":"string","required":true},"user_event_pattern":{"type":"string","optional":true}},"block_types":{"auth":{"nesting_mode":3,"block":{"attributes":{"managed_identity_id":{"type":"string","required":true}}},"optional":true}}},"optional":true},"event_listener":{"nesting_mode":3,"block":{"attributes":{"eventhub_name":{"type":"string","required":true},"eventhub_namespace_name":{"type":"string","required":true},"system_event_name_filter":{"type":["list","string"],"optional":true},"user_event_name_filter":{"type":["list","string"],"optional":true}}},"optional":true}}}},"azurerm_web_pubsub_network_acl":{"block":{"attributes":{"default_action":{"type":"string","optional":true,"default":"Deny"},"web_pubsub_id":{"type":"string","required":true}},"block_types":{"private_endpoint":{"nesting_mode":4,"block":{"attributes":{"allowed_request_types":{"type":["set","string"],"optional":true},"denied_request_types":{"type":["set","string"],"optional":true},"id":{"type":"string","required":true}}},"optional":true},"public_network":{"nesting_mode":3,"block":{"attributes":{"allowed_request_types":{"type":["set","string"],"optional":true,"conflicts_with":["public_network.0.denied_request_types"]},"denied_request_types":{"type":["set","string"],"optional":true,"conflicts_with":["public_network.0.allowed_request_types"]}}},"required":true}}}},"azurerm_web_pubsub_shared_private_link_resource":{"block":{"attributes":{"name":{"type":"string","required":true},"request_message":{"type":"string","optional":true},"status":{"type":"string","computed":true},"subresource_name":{"type":"string","required":true},"target_resource_id":{"type":"string","required":true},"web_pubsub_id":{"type":"string","required":true}}}},"azurerm_web_pubsub_socketio":{"block":{"attributes":{"aad_auth_enabled":{"type":"bool","optional":true,"default":true},"external_ip":{"type":"string","computed":true},"hostname":{"type":"string","computed":true},"live_trace_connectivity_logs_enabled":{"type":"bool","optional":true,"default":true},"live_trace_enabled":{"type":"bool","optional":true,"default":true},"live_trace_http_request_logs_enabled":{"type":"bool","optional":true,"default":true},"live_trace_messaging_logs_enabled":{"type":"bool","optional":true,"default":true},"local_auth_enabled":{"type":"bool","optional":true,"default":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"primary_access_key":{"type":"string","computed":true},"primary_connection_string":{"type":"string","computed":true},"public_network_access":{"type":"string","optional":true,"default":"Enabled"},"public_port":{"type":"number","computed":true},"resource_group_name":{"type":"string","required":true},"secondary_access_key":{"type":"string","computed":true},"secondary_connection_string":{"type":"string","computed":true},"server_port":{"type":"number","computed":true},"service_mode":{"type":"string","optional":true,"default":"Default"},"tags":{"type":["map","string"],"optional":true},"tls_client_cert_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"sku":{"nesting_mode":3,"block":{"attributes":{"capacity":{"type":"number","optional":true,"default":1},"name":{"type":"string","required":true}}},"required":true}}}},"azurerm_windows_function_app":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"builtin_logging_enabled":{"type":"bool","optional":true,"default":true},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Optional"},"content_share_force_disabled":{"type":"bool","optional":true,"default":false},"custom_domain_verification_id":{"type":"string","computed":true},"daily_memory_time_quota":{"type":"number","optional":true,"default":0},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"functions_extension_version":{"type":"string","optional":true,"default":"~4"},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"computed":true},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_plan_id":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","optional":true,"conflicts_with":["storage_uses_managed_identity","storage_key_vault_secret_id"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_key_vault_secret_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_uses_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["storage_account_access_key","storage_key_vault_secret_id"]},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"computed":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"app_scale_limit":{"type":"number","optional":true,"computed":true},"application_insights_connection_string":{"type":"string","optional":true},"application_insights_key":{"type":"string","optional":true},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"windows_fx_version":{"type":"string","computed":true},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"app_service_logs":{"nesting_mode":3,"block":{"attributes":{"disk_quota_mb":{"type":"number","optional":true,"default":35},"retention_period_days":{"type":"number","optional":true}}},"optional":true},"application_stack":{"nesting_mode":3,"block":{"attributes":{"dotnet_version":{"type":"string","optional":true,"default":"v4.0","exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"powershell_core_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"use_custom_runtime":{"type":"bool","optional":true,"computed":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"use_dotnet_isolated_runtime":{"type":"bool","optional":true,"computed":true,"conflicts_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]}}},"optional":true,"computed":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"sticky_settings":{"nesting_mode":3,"block":{"attributes":{"app_setting_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]},"connection_string_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]}}},"optional":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_windows_function_app_slot":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"builtin_logging_enabled":{"type":"bool","optional":true,"default":true},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Optional"},"content_share_force_disabled":{"type":"bool","optional":true,"default":false},"custom_domain_verification_id":{"type":"string","computed":true},"daily_memory_time_quota":{"type":"number","optional":true,"default":0},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"function_app_id":{"type":"string","required":true},"functions_extension_version":{"type":"string","optional":true,"default":"~4"},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"service_plan_id":{"type":"string","optional":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"storage_account_access_key":{"type":"string","optional":true,"conflicts_with":["storage_uses_managed_identity","storage_key_vault_secret_id"]},"storage_account_name":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_key_vault_secret_id":{"type":"string","optional":true,"exactly_one_of":["storage_account_name","storage_key_vault_secret_id"]},"storage_uses_managed_identity":{"type":"bool","optional":true,"default":false,"conflicts_with":["storage_account_access_key","storage_key_vault_secret_id"]},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_subnet_id":{"type":"string","optional":true},"vnet_image_pull_enabled":{"type":"bool","optional":true,"default":false},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"computed":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"app_scale_limit":{"type":"number","optional":true,"computed":true},"application_insights_connection_string":{"type":"string","optional":true},"application_insights_key":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"elastic_instance_minimum":{"type":"number","optional":true,"computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"default":0},"health_check_path":{"type":"string","optional":true},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"pre_warmed_instance_count":{"type":"number","optional":true,"computed":true},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"runtime_scale_monitoring_enabled":{"type":"bool","optional":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"windows_fx_version":{"type":"string","computed":true},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"app_service_logs":{"nesting_mode":3,"block":{"attributes":{"disk_quota_mb":{"type":"number","optional":true,"default":35},"retention_period_days":{"type":"number","optional":true}}},"optional":true},"application_stack":{"nesting_mode":3,"block":{"attributes":{"dotnet_version":{"type":"string","optional":true,"default":"v4.0","exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"java_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"node_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"powershell_core_version":{"type":"string","optional":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"use_custom_runtime":{"type":"bool","optional":true,"computed":true,"exactly_one_of":["site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]},"use_dotnet_isolated_runtime":{"type":"bool","optional":true,"computed":true,"conflicts_with":["site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.powershell_core_version","site_config.0.application_stack.0.use_custom_runtime"]}}},"optional":true,"computed":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true}}},"required":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_windows_virtual_machine":{"block":{"attributes":{"admin_password":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"],"required_with":["admin_username"]},"admin_username":{"type":"string","optional":true,"exactly_one_of":["admin_username","os_managed_disk_id"],"required_with":["admin_password"]},"allow_extension_operations":{"type":"bool","optional":true,"computed":true},"automatic_updates_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["enable_automatic_updates","os_managed_disk_id"]},"availability_set_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id","virtual_machine_scale_set_id","zone"]},"bypass_platform_safety_checks_on_user_schedule_enabled":{"type":"bool","optional":true,"default":false,"conflicts_with":["os_managed_disk_id"]},"capacity_reservation_group_id":{"type":"string","optional":true,"conflicts_with":["availability_set_id","proximity_placement_group_id"]},"computer_name":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"custom_data":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"]},"dedicated_host_group_id":{"type":"string","optional":true,"conflicts_with":["dedicated_host_id"]},"dedicated_host_id":{"type":"string","optional":true,"conflicts_with":["dedicated_host_group_id"]},"disk_controller_type":{"type":"string","optional":true,"computed":true},"edge_zone":{"type":"string","optional":true},"enable_automatic_updates":{"type":"bool","optional":true,"computed":true,"conflicts_with":["automatic_updates_enabled","os_managed_disk_id"]},"encryption_at_host_enabled":{"type":"bool","optional":true},"eviction_policy":{"type":"string","optional":true},"extensions_time_budget":{"type":"string","optional":true,"default":"PT1H30M"},"hotpatching_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"license_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"max_bid_price":{"type":"number","optional":true,"default":-1},"name":{"type":"string","required":true},"network_interface_ids":{"type":["list","string"],"required":true},"os_managed_disk_id":{"type":"string","optional":true,"computed":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"patch_assessment_mode":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"patch_mode":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"platform_fault_domain":{"type":"number","optional":true,"default":-1,"required_with":["virtual_machine_scale_set_id"]},"priority":{"type":"string","optional":true,"default":"Regular"},"private_ip_address":{"type":"string","computed":true},"private_ip_addresses":{"type":["list","string"],"computed":true},"provision_vm_agent":{"type":"bool","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"proximity_placement_group_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id"]},"public_ip_address":{"type":"string","computed":true},"public_ip_addresses":{"type":["list","string"],"computed":true},"reboot_setting":{"type":"string","optional":true,"conflicts_with":["os_managed_disk_id"]},"resource_group_name":{"type":"string","required":true},"secure_boot_enabled":{"type":"bool","optional":true},"size":{"type":"string","required":true},"source_image_id":{"type":"string","optional":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"tags":{"type":["map","string"],"optional":true},"timezone":{"type":"string","optional":true},"user_data":{"type":"string","optional":true},"virtual_machine_id":{"type":"string","computed":true},"virtual_machine_scale_set_id":{"type":"string","optional":true,"conflicts_with":["availability_set_id"]},"vm_agent_platform_updates_enabled":{"type":"bool","optional":true,"computed":true},"vtpm_enabled":{"type":"bool","optional":true},"zone":{"type":"string","optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"hibernation_enabled":{"type":"bool","optional":true,"default":false},"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"additional_unattend_content":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"setting":{"type":"string","required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"storage_account_uri":{"type":"string","optional":true}}},"optional":true},"gallery_application":{"nesting_mode":3,"block":{"attributes":{"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":false},"configuration_blob_uri":{"type":"string","optional":true},"order":{"type":"number","optional":true,"default":0},"tag":{"type":"string","optional":true},"treat_failure_as_deployment_failure_enabled":{"type":"bool","optional":true,"default":false},"version_id":{"type":"string","required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.secure_vm_disk_encryption_set_id"]},"disk_size_gb":{"type":"number","optional":true,"computed":true},"id":{"type":"string","computed":true},"name":{"type":"string","optional":true,"computed":true,"conflicts_with":["os_managed_disk_id"]},"secure_vm_disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.disk_encryption_set_id"]},"security_encryption_type":{"type":"string","optional":true},"storage_account_type":{"type":"string","optional":true,"computed":true,"exactly_one_of":["os_managed_disk_id","os_disk.0.storage_account_type"]},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"diff_disk_settings":{"nesting_mode":3,"block":{"attributes":{"option":{"type":"string","required":true},"placement":{"type":"string","optional":true,"default":"CacheDisk"}}},"optional":true,"conflicts_with":["os_managed_disk_id"]}}},"required":true},"os_image_notification":{"nesting_mode":3,"block":{"attributes":{"timeout":{"type":"string","optional":true,"default":"PT15M"}}},"optional":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"store":{"type":"string","required":true},"url":{"type":"string","required":true}}},"required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]},"source_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["os_managed_disk_id","source_image_id","source_image_reference"]},"termination_notification":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"timeout":{"type":"string","optional":true,"default":"PT5M"}}},"optional":true,"computed":true},"winrm_listener":{"nesting_mode":4,"block":{"attributes":{"certificate_url":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"optional":true,"conflicts_with":["os_managed_disk_id"]}}}},"azurerm_windows_virtual_machine_scale_set":{"block":{"attributes":{"admin_password":{"type":"string","required":true},"admin_username":{"type":"string","required":true},"capacity_reservation_group_id":{"type":"string","optional":true,"conflicts_with":["proximity_placement_group_id"]},"computer_name_prefix":{"type":"string","optional":true,"computed":true},"custom_data":{"type":"string","optional":true},"do_not_run_extensions_on_overprovisioned_machines":{"type":"bool","optional":true,"default":false},"edge_zone":{"type":"string","optional":true},"enable_automatic_updates":{"type":"bool","optional":true,"default":true},"encryption_at_host_enabled":{"type":"bool","optional":true},"eviction_policy":{"type":"string","optional":true},"extension_operations_enabled":{"type":"bool","optional":true,"default":true},"extensions_time_budget":{"type":"string","optional":true,"default":"PT1H30M"},"health_probe_id":{"type":"string","optional":true},"host_group_id":{"type":"string","optional":true},"instances":{"type":"number","required":true},"license_type":{"type":"string","optional":true},"location":{"type":"string","required":true},"max_bid_price":{"type":"number","optional":true,"default":-1},"name":{"type":"string","required":true},"overprovision":{"type":"bool","optional":true,"default":true},"platform_fault_domain_count":{"type":"number","optional":true,"computed":true},"priority":{"type":"string","optional":true,"default":"Regular"},"provision_vm_agent":{"type":"bool","optional":true,"default":true},"proximity_placement_group_id":{"type":"string","optional":true,"conflicts_with":["capacity_reservation_group_id"]},"resilient_vm_creation_enabled":{"type":"bool","optional":true,"default":false},"resilient_vm_deletion_enabled":{"type":"bool","optional":true,"default":false},"resource_group_name":{"type":"string","required":true},"secure_boot_enabled":{"type":"bool","optional":true},"single_placement_group":{"type":"bool","optional":true,"default":true},"sku":{"type":"string","required":true},"source_image_id":{"type":"string","optional":true,"exactly_one_of":["source_image_id","source_image_reference"]},"tags":{"type":["map","string"],"optional":true},"timezone":{"type":"string","optional":true},"unique_id":{"type":"string","computed":true},"upgrade_mode":{"type":"string","optional":true,"default":"Manual"},"user_data":{"type":"string","optional":true},"vtpm_enabled":{"type":"bool","optional":true},"zone_balance":{"type":"bool","optional":true,"default":false},"zones":{"type":["set","string"],"optional":true}},"block_types":{"additional_capabilities":{"nesting_mode":3,"block":{"attributes":{"ultra_ssd_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"additional_unattend_content":{"nesting_mode":3,"block":{"attributes":{"content":{"type":"string","required":true},"setting":{"type":"string","required":true}}},"optional":true},"automatic_instance_repair":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"grace_period":{"type":"string","optional":true,"computed":true}}},"optional":true,"computed":true},"automatic_os_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"disable_automatic_rollback":{"type":"bool","required":true},"enable_automatic_os_upgrade":{"type":"bool","required":true}}},"optional":true},"boot_diagnostics":{"nesting_mode":3,"block":{"attributes":{"storage_account_uri":{"type":"string","optional":true}}},"optional":true},"data_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"create_option":{"type":"string","optional":true,"default":"Empty"},"disk_encryption_set_id":{"type":"string","optional":true},"disk_size_gb":{"type":"number","required":true},"lun":{"type":"number","required":true},"name":{"type":"string","optional":true},"storage_account_type":{"type":"string","required":true},"ultra_ssd_disk_iops_read_write":{"type":"number","optional":true,"computed":true},"ultra_ssd_disk_mbps_read_write":{"type":"number","optional":true,"computed":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}}},"optional":true},"extension":{"nesting_mode":4,"block":{"attributes":{"auto_upgrade_minor_version":{"type":"bool","optional":true,"default":true},"automatic_upgrade_enabled":{"type":"bool","optional":true,"default":false},"force_update_tag":{"type":"string","optional":true},"name":{"type":"string","required":true},"protected_settings":{"type":"string","optional":true},"provision_after_extensions":{"type":["list","string"],"optional":true},"publisher":{"type":"string","required":true},"settings":{"type":"string","optional":true},"type":{"type":"string","required":true},"type_handler_version":{"type":"string","required":true}},"block_types":{"protected_settings_from_key_vault":{"nesting_mode":3,"block":{"attributes":{"secret_url":{"type":"string","required":true},"source_vault_id":{"type":"string","required":true}}},"optional":true}}},"optional":true,"computed":true},"gallery_application":{"nesting_mode":3,"block":{"attributes":{"configuration_blob_uri":{"type":"string","optional":true},"order":{"type":"number","optional":true,"default":0},"tag":{"type":"string","optional":true},"version_id":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"network_interface":{"nesting_mode":3,"block":{"attributes":{"auxiliary_mode":{"type":"string","optional":true},"auxiliary_sku":{"type":"string","optional":true},"dns_servers":{"type":["list","string"],"optional":true},"enable_accelerated_networking":{"type":"bool","optional":true,"default":false},"enable_ip_forwarding":{"type":"bool","optional":true,"default":false},"name":{"type":"string","required":true},"network_security_group_id":{"type":"string","optional":true},"primary":{"type":"bool","optional":true,"default":false}},"block_types":{"ip_configuration":{"nesting_mode":3,"block":{"attributes":{"application_gateway_backend_address_pool_ids":{"type":["set","string"],"optional":true},"application_security_group_ids":{"type":["set","string"],"optional":true},"load_balancer_backend_address_pool_ids":{"type":["set","string"],"optional":true},"load_balancer_inbound_nat_rules_ids":{"type":["set","string"],"optional":true},"name":{"type":"string","required":true},"primary":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"public_ip_address":{"nesting_mode":3,"block":{"attributes":{"domain_name_label":{"type":"string","optional":true},"idle_timeout_in_minutes":{"type":"number","optional":true,"computed":true},"name":{"type":"string","required":true},"public_ip_prefix_id":{"type":"string","optional":true},"version":{"type":"string","optional":true,"default":"IPv4"}},"block_types":{"ip_tag":{"nesting_mode":3,"block":{"attributes":{"tag":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"required":true}}},"required":true},"os_disk":{"nesting_mode":3,"block":{"attributes":{"caching":{"type":"string","required":true},"disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.secure_vm_disk_encryption_set_id"]},"disk_size_gb":{"type":"number","optional":true,"computed":true},"secure_vm_disk_encryption_set_id":{"type":"string","optional":true,"conflicts_with":["os_disk.0.disk_encryption_set_id"]},"security_encryption_type":{"type":"string","optional":true},"storage_account_type":{"type":"string","required":true},"write_accelerator_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"diff_disk_settings":{"nesting_mode":3,"block":{"attributes":{"option":{"type":"string","required":true},"placement":{"type":"string","optional":true,"default":"CacheDisk"}}},"optional":true}}},"required":true},"plan":{"nesting_mode":3,"block":{"attributes":{"name":{"type":"string","required":true},"product":{"type":"string","required":true},"publisher":{"type":"string","required":true}}},"optional":true},"rolling_upgrade_policy":{"nesting_mode":3,"block":{"attributes":{"cross_zone_upgrades_enabled":{"type":"bool","optional":true},"max_batch_instance_percent":{"type":"number","required":true},"max_unhealthy_instance_percent":{"type":"number","required":true},"max_unhealthy_upgraded_instance_percent":{"type":"number","required":true},"maximum_surge_instances_enabled":{"type":"bool","optional":true},"pause_time_between_batches":{"type":"string","required":true},"prioritize_unhealthy_instances_enabled":{"type":"bool","optional":true}}},"optional":true},"scale_in":{"nesting_mode":3,"block":{"attributes":{"force_deletion_enabled":{"type":"bool","optional":true,"default":false},"rule":{"type":"string","optional":true,"default":"Default"}}},"optional":true},"secret":{"nesting_mode":3,"block":{"attributes":{"key_vault_id":{"type":"string","required":true}},"block_types":{"certificate":{"nesting_mode":4,"block":{"attributes":{"store":{"type":"string","required":true},"url":{"type":"string","required":true}}},"required":true}}},"optional":true},"source_image_reference":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"optional":true,"exactly_one_of":["source_image_id","source_image_reference"]},"spot_restore":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":false},"timeout":{"type":"string","optional":true,"default":"PT1H"}}},"optional":true,"computed":true},"termination_notification":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","required":true},"timeout":{"type":"string","optional":true,"default":"PT5M"}}},"optional":true,"computed":true},"winrm_listener":{"nesting_mode":4,"block":{"attributes":{"certificate_url":{"type":"string","optional":true},"protocol":{"type":"string","required":true}}},"optional":true}}}},"azurerm_windows_web_app":{"block":{"attributes":{"app_settings":{"type":["map","string"],"optional":true},"client_affinity_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Required"},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"location":{"type":"string","required":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"resource_group_name":{"type":"string","required":true},"service_plan_id":{"type":"string","required":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_image_pull_enabled":{"type":"bool","optional":true,"computed":true},"virtual_network_subnet_id":{"type":"string","optional":true},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages":{"type":"bool","optional":true,"default":false},"failed_request_tracing":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","required":true}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","optional":true,"default":0},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"]}}},"optional":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"linux_fx_version":{"type":"string","computed":true},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"local_mysql_enabled":{"type":"bool","optional":true,"default":false},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"default":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"windows_fx_version":{"type":"string","computed":true},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"application_stack":{"nesting_mode":3,"block":{"attributes":{"current_stack":{"type":"string","optional":true,"computed":true},"docker_image_name":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"docker_registry_password":{"type":"string","optional":true},"docker_registry_url":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.docker_image_name"]},"docker_registry_username":{"type":"string","optional":true},"dotnet_core_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"dotnet_version":{"type":"string","optional":true,"computed":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"java_container":{"type":"string","optional":true,"conflicts_with":["site_config.0.application_stack.0.tomcat_version"],"required_with":["site_config.0.application_stack.0.java_container_version"]},"java_container_version":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_container"]},"java_embedded_server_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["site_config.0.application_stack.0.tomcat_version"],"required_with":["site_config.0.application_stack.0.java_version"]},"java_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"node_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"php_version":{"type":"string","optional":true,"computed":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"python":{"type":"bool","optional":true,"default":false,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"tomcat_version":{"type":"string","optional":true,"conflicts_with":["site_config.0.application_stack.0.java_embedded_server_enabled"],"required_with":["site_config.0.application_stack.0.java_version"]}}},"optional":true,"computed":true},"auto_heal_setting":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true},"minimum_process_execution_time":{"type":"string","optional":true,"computed":true}},"block_types":{"custom_action":{"nesting_mode":3,"block":{"attributes":{"executable":{"type":"string","required":true},"parameters":{"type":"string","optional":true}}},"optional":true}}},"required":true},"trigger":{"nesting_mode":3,"block":{"attributes":{"private_memory_kb":{"type":"number","optional":true}},"block_types":{"requests":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true}}},"optional":true},"slow_request":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"time_taken":{"type":"string","required":true}}},"optional":true},"slow_request_with_path":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"time_taken":{"type":"string","required":true}}},"optional":true},"status_code":{"nesting_mode":4,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"status_code_range":{"type":"string","required":true},"sub_status":{"type":"number","optional":true},"win32_status_code":{"type":"number","optional":true}}},"optional":true}}},"required":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"handler_mapping":{"nesting_mode":4,"block":{"attributes":{"arguments":{"type":"string","optional":true},"extension":{"type":"string","required":true},"script_processor_path":{"type":"string","required":true}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"virtual_application":{"nesting_mode":4,"block":{"attributes":{"physical_path":{"type":"string","required":true},"preload":{"type":"bool","required":true},"virtual_path":{"type":"string","required":true}},"block_types":{"virtual_directory":{"nesting_mode":4,"block":{"attributes":{"physical_path":{"type":"string","optional":true},"virtual_path":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"required":true},"sticky_settings":{"nesting_mode":3,"block":{"attributes":{"app_setting_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]},"connection_string_names":{"type":["list","string"],"optional":true,"at_least_one_of":["sticky_settings.0.app_setting_names","sticky_settings.0.connection_string_names"]}}},"optional":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_windows_web_app_slot":{"block":{"attributes":{"app_service_id":{"type":"string","required":true},"app_settings":{"type":["map","string"],"optional":true},"client_affinity_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_enabled":{"type":"bool","optional":true,"default":false},"client_certificate_exclusion_paths":{"type":"string","optional":true},"client_certificate_mode":{"type":"string","optional":true,"default":"Required"},"custom_domain_verification_id":{"type":"string","computed":true},"default_hostname":{"type":"string","computed":true},"enabled":{"type":"bool","optional":true,"default":true},"ftp_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"hosting_environment_id":{"type":"string","computed":true},"https_only":{"type":"bool","optional":true,"default":false},"key_vault_reference_identity_id":{"type":"string","optional":true,"computed":true},"kind":{"type":"string","computed":true},"name":{"type":"string","required":true},"outbound_ip_address_list":{"type":["list","string"],"computed":true},"outbound_ip_addresses":{"type":"string","computed":true},"possible_outbound_ip_address_list":{"type":["list","string"],"computed":true},"possible_outbound_ip_addresses":{"type":"string","computed":true},"public_network_access_enabled":{"type":"bool","optional":true,"default":true},"service_plan_id":{"type":"string","optional":true},"site_credential":{"type":["list",["object",{"name":"string","password":"string"}]],"computed":true},"tags":{"type":["map","string"],"optional":true},"virtual_network_backup_restore_enabled":{"type":"bool","optional":true,"default":false},"virtual_network_image_pull_enabled":{"type":"bool","optional":true,"computed":true},"virtual_network_subnet_id":{"type":"string","optional":true},"webdeploy_publish_basic_authentication_enabled":{"type":"bool","optional":true,"default":true},"zip_deploy_file":{"type":"string","optional":true,"computed":true}},"block_types":{"auth_settings":{"nesting_mode":3,"block":{"attributes":{"additional_login_parameters":{"type":["map","string"],"optional":true},"allowed_external_redirect_urls":{"type":["list","string"],"optional":true,"computed":true},"default_provider":{"type":"string","optional":true,"computed":true},"enabled":{"type":"bool","required":true},"issuer":{"type":"string","optional":true},"runtime_version":{"type":"string","optional":true,"computed":true},"token_refresh_extension_hours":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"unauthenticated_client_action":{"type":"string","optional":true,"computed":true}},"block_types":{"active_directory":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings.0.active_directory.0.client_secret"]}}},"optional":true},"facebook":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"app_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.facebook.0.app_secret","auth_settings.0.facebook.0.app_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"github":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.github.0.client_secret","auth_settings.0.github.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"google":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.google.0.client_secret","auth_settings.0.google.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"microsoft":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.microsoft.0.client_secret","auth_settings.0.microsoft.0.client_secret_setting_name"]},"oauth_scopes":{"type":["list","string"],"optional":true}}},"optional":true},"twitter":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret":{"type":"string","optional":true,"exactly_one_of":["auth_settings.0.twitter.0.consumer_secret","auth_settings.0.twitter.0.consumer_secret_setting_name"]},"consumer_secret_setting_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"auth_settings_v2":{"nesting_mode":3,"block":{"attributes":{"auth_enabled":{"type":"bool","optional":true},"config_file_path":{"type":"string","optional":true},"default_provider":{"type":"string","optional":true},"excluded_paths":{"type":["list","string"],"optional":true},"forward_proxy_convention":{"type":"string","optional":true,"default":"NoProxy"},"forward_proxy_custom_host_header_name":{"type":"string","optional":true},"forward_proxy_custom_scheme_header_name":{"type":"string","optional":true},"http_route_api_prefix":{"type":"string","optional":true,"default":"/.auth"},"require_authentication":{"type":"bool","optional":true},"require_https":{"type":"bool","optional":true,"default":true},"runtime_version":{"type":"string","optional":true,"default":"~1"},"unauthenticated_action":{"type":"string","optional":true,"default":"RedirectToLoginPage"}},"block_types":{"active_directory_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_applications":{"type":["list","string"],"optional":true},"allowed_audiences":{"type":["list","string"],"optional":true},"allowed_groups":{"type":["list","string"],"optional":true},"allowed_identities":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_certificate_thumbprint":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_setting_name"]},"client_secret_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.active_directory_v2.0.client_secret_certificate_thumbprint"]},"jwt_allowed_client_applications":{"type":["list","string"],"optional":true},"jwt_allowed_groups":{"type":["list","string"],"optional":true},"login_parameters":{"type":["map","string"],"optional":true},"tenant_auth_endpoint":{"type":"string","required":true},"www_authentication_disabled":{"type":"bool","optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"apple_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"azure_static_web_app_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"custom_oidc_v2":{"nesting_mode":3,"block":{"attributes":{"authorisation_endpoint":{"type":"string","computed":true},"certification_uri":{"type":"string","computed":true},"client_credential_method":{"type":"string","computed":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","computed":true},"issuer_endpoint":{"type":"string","computed":true},"name":{"type":"string","required":true},"name_claim_type":{"type":"string","optional":true},"openid_configuration_endpoint":{"type":"string","required":true},"scopes":{"type":["list","string"],"optional":true},"token_endpoint":{"type":"string","computed":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"facebook_v2":{"nesting_mode":3,"block":{"attributes":{"app_id":{"type":"string","required":true},"app_secret_setting_name":{"type":"string","required":true},"graph_api_version":{"type":"string","optional":true,"computed":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"github_v2":{"nesting_mode":3,"block":{"attributes":{"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"google_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"login":{"nesting_mode":3,"block":{"attributes":{"allowed_external_redirect_urls":{"type":["list","string"],"optional":true},"cookie_expiration_convention":{"type":"string","optional":true,"default":"FixedTime"},"cookie_expiration_time":{"type":"string","optional":true,"default":"08:00:00"},"logout_endpoint":{"type":"string","optional":true},"nonce_expiration_time":{"type":"string","optional":true,"default":"00:05:00"},"preserve_url_fragments_for_logins":{"type":"bool","optional":true,"default":false},"token_refresh_extension_time":{"type":"number","optional":true,"default":72},"token_store_enabled":{"type":"bool","optional":true,"default":false},"token_store_path":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_sas_setting_name"]},"token_store_sas_setting_name":{"type":"string","optional":true,"conflicts_with":["auth_settings_v2.0.login.0.token_store_path"]},"validate_nonce":{"type":"bool","optional":true,"default":true}}},"required":true},"microsoft_v2":{"nesting_mode":3,"block":{"attributes":{"allowed_audiences":{"type":["list","string"],"optional":true},"client_id":{"type":"string","required":true},"client_secret_setting_name":{"type":"string","required":true},"login_scopes":{"type":["list","string"],"optional":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]},"twitter_v2":{"nesting_mode":3,"block":{"attributes":{"consumer_key":{"type":"string","required":true},"consumer_secret_setting_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["auth_settings_v2.0.apple_v2","auth_settings_v2.0.active_directory_v2","auth_settings_v2.0.azure_static_web_app_v2","auth_settings_v2.0.custom_oidc_v2","auth_settings_v2.0.facebook_v2","auth_settings_v2.0.github_v2","auth_settings_v2.0.google_v2","auth_settings_v2.0.microsoft_v2","auth_settings_v2.0.twitter_v2"]}}},"optional":true},"backup":{"nesting_mode":3,"block":{"attributes":{"enabled":{"type":"bool","optional":true,"default":true},"name":{"type":"string","required":true},"storage_account_url":{"type":"string","required":true}},"block_types":{"schedule":{"nesting_mode":3,"block":{"attributes":{"frequency_interval":{"type":"number","required":true},"frequency_unit":{"type":"string","required":true},"keep_at_least_one_backup":{"type":"bool","optional":true,"default":false},"last_execution_time":{"type":"string","computed":true},"retention_period_days":{"type":"number","optional":true,"default":30},"start_time":{"type":"string","optional":true,"computed":true}}},"required":true}}},"optional":true},"connection_string":{"nesting_mode":4,"block":{"attributes":{"name":{"type":"string","required":true},"type":{"type":"string","required":true},"value":{"type":"string","required":true}}},"optional":true},"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"optional":true},"principal_id":{"type":"string","computed":true},"tenant_id":{"type":"string","computed":true},"type":{"type":"string","required":true}}},"optional":true},"logs":{"nesting_mode":3,"block":{"attributes":{"detailed_error_messages":{"type":"bool","optional":true,"default":false},"failed_request_tracing":{"type":"bool","optional":true,"default":false}},"block_types":{"application_logs":{"nesting_mode":3,"block":{"attributes":{"file_system_level":{"type":"string","required":true}},"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"level":{"type":"string","required":true},"retention_in_days":{"type":"number","required":true},"sas_url":{"type":"string","required":true}}},"optional":true}}},"optional":true},"http_logs":{"nesting_mode":3,"block":{"block_types":{"azure_blob_storage":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","optional":true,"default":0},"sas_url":{"type":"string","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.file_system"]},"file_system":{"nesting_mode":3,"block":{"attributes":{"retention_in_days":{"type":"number","required":true},"retention_in_mb":{"type":"number","required":true}}},"optional":true,"conflicts_with":["logs.0.http_logs.0.azure_blob_storage"]}}},"optional":true}}},"optional":true},"site_config":{"nesting_mode":3,"block":{"attributes":{"always_on":{"type":"bool","optional":true,"default":true},"api_definition_url":{"type":"string","optional":true},"api_management_api_id":{"type":"string","optional":true},"app_command_line":{"type":"string","optional":true},"auto_swap_slot_name":{"type":"string","optional":true},"container_registry_managed_identity_client_id":{"type":"string","optional":true},"container_registry_use_managed_identity":{"type":"bool","optional":true,"default":false},"default_documents":{"type":["list","string"],"optional":true,"computed":true},"detailed_error_logging_enabled":{"type":"bool","computed":true},"ftps_state":{"type":"string","optional":true,"default":"Disabled"},"health_check_eviction_time_in_min":{"type":"number","optional":true,"required_with":["site_config.0.health_check_path"]},"health_check_path":{"type":"string","optional":true,"required_with":["site_config.0.health_check_eviction_time_in_min"]},"http2_enabled":{"type":"bool","optional":true,"default":false},"ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"load_balancing_mode":{"type":"string","optional":true,"default":"LeastRequests"},"local_mysql_enabled":{"type":"bool","optional":true,"default":false},"managed_pipeline_mode":{"type":"string","optional":true,"default":"Integrated"},"minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"remote_debugging_enabled":{"type":"bool","optional":true,"default":false},"remote_debugging_version":{"type":"string","optional":true,"computed":true},"scm_ip_restriction_default_action":{"type":"string","optional":true,"default":"Allow"},"scm_minimum_tls_version":{"type":"string","optional":true,"default":"1.2"},"scm_type":{"type":"string","computed":true},"scm_use_main_ip_restriction":{"type":"bool","optional":true,"default":false},"use_32_bit_worker":{"type":"bool","optional":true,"computed":true},"vnet_route_all_enabled":{"type":"bool","optional":true,"default":false},"websockets_enabled":{"type":"bool","optional":true,"default":false},"windows_fx_version":{"type":"string","computed":true},"worker_count":{"type":"number","optional":true,"computed":true}},"block_types":{"application_stack":{"nesting_mode":3,"block":{"attributes":{"current_stack":{"type":"string","optional":true,"computed":true},"docker_image_name":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"docker_registry_password":{"type":"string","optional":true},"docker_registry_url":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.docker_image_name"]},"docker_registry_username":{"type":"string","optional":true},"dotnet_core_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"dotnet_version":{"type":"string","optional":true,"computed":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"java_container":{"type":"string","optional":true,"conflicts_with":["site_config.0.application_stack.0.tomcat_version"],"required_with":["site_config.0.application_stack.0.java_container_version"]},"java_container_version":{"type":"string","optional":true,"required_with":["site_config.0.application_stack.0.java_container"]},"java_embedded_server_enabled":{"type":"bool","optional":true,"computed":true,"conflicts_with":["site_config.0.application_stack.0.tomcat_version"],"required_with":["site_config.0.application_stack.0.java_version"]},"java_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"node_version":{"type":"string","optional":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"php_version":{"type":"string","optional":true,"computed":true,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"python":{"type":"bool","optional":true,"default":false,"at_least_one_of":["site_config.0.application_stack.0.docker_image_name","site_config.0.application_stack.0.dotnet_version","site_config.0.application_stack.0.dotnet_core_version","site_config.0.application_stack.0.java_version","site_config.0.application_stack.0.node_version","site_config.0.application_stack.0.php_version","site_config.0.application_stack.0.python"]},"tomcat_version":{"type":"string","optional":true,"conflicts_with":["site_config.0.application_stack.0.java_embedded_server_enabled"],"required_with":["site_config.0.application_stack.0.java_version"]}}},"optional":true,"computed":true},"auto_heal_setting":{"nesting_mode":3,"block":{"block_types":{"action":{"nesting_mode":3,"block":{"attributes":{"action_type":{"type":"string","required":true},"minimum_process_execution_time":{"type":"string","optional":true,"computed":true}},"block_types":{"custom_action":{"nesting_mode":3,"block":{"attributes":{"executable":{"type":"string","required":true},"parameters":{"type":"string","optional":true}}},"optional":true}}},"required":true},"trigger":{"nesting_mode":3,"block":{"attributes":{"private_memory_kb":{"type":"number","optional":true}},"block_types":{"requests":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true}}},"optional":true},"slow_request":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"time_taken":{"type":"string","required":true}}},"optional":true},"slow_request_with_path":{"nesting_mode":3,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"time_taken":{"type":"string","required":true}}},"optional":true},"status_code":{"nesting_mode":4,"block":{"attributes":{"count":{"type":"number","required":true},"interval":{"type":"string","required":true},"path":{"type":"string","optional":true},"status_code_range":{"type":"string","required":true},"sub_status":{"type":"number","optional":true},"win32_status_code":{"type":"number","optional":true}}},"optional":true}}},"required":true}}},"optional":true},"cors":{"nesting_mode":3,"block":{"attributes":{"allowed_origins":{"type":["set","string"],"optional":true},"support_credentials":{"type":"bool","optional":true,"default":false}}},"optional":true},"handler_mapping":{"nesting_mode":4,"block":{"attributes":{"arguments":{"type":"string","optional":true},"extension":{"type":"string","required":true},"script_processor_path":{"type":"string","required":true}}},"optional":true},"ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"scm_ip_restriction":{"nesting_mode":3,"block":{"attributes":{"action":{"type":"string","optional":true,"default":"Allow"},"description":{"type":"string","optional":true},"headers":{"type":["list",["object",{"x_azure_fdid":["list","string"],"x_fd_health_probe":["list","string"],"x_forwarded_for":["list","string"],"x_forwarded_host":["list","string"]}]],"optional":true},"ip_address":{"type":"string","optional":true},"name":{"type":"string","optional":true,"computed":true},"priority":{"type":"number","optional":true,"default":65000},"service_tag":{"type":"string","optional":true},"virtual_network_subnet_id":{"type":"string","optional":true}}},"optional":true},"virtual_application":{"nesting_mode":4,"block":{"attributes":{"physical_path":{"type":"string","required":true},"preload":{"type":"bool","required":true},"virtual_path":{"type":"string","required":true}},"block_types":{"virtual_directory":{"nesting_mode":4,"block":{"attributes":{"physical_path":{"type":"string","optional":true},"virtual_path":{"type":"string","optional":true}}},"optional":true}}},"optional":true}}},"required":true},"storage_account":{"nesting_mode":4,"block":{"attributes":{"access_key":{"type":"string","required":true},"account_name":{"type":"string","required":true},"mount_path":{"type":"string","optional":true},"name":{"type":"string","required":true},"share_name":{"type":"string","required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_workloads_sap_discovery_virtual_instance":{"block":{"attributes":{"central_server_virtual_machine_id":{"type":"string","required":true},"environment":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_resource_group_name":{"type":"string","optional":true},"managed_resources_network_access_type":{"type":"string","optional":true,"default":"Public"},"managed_storage_account_name":{"type":"string","optional":true},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sap_product":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true}}}},"azurerm_workloads_sap_single_node_virtual_instance":{"block":{"attributes":{"app_location":{"type":"string","required":true},"environment":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_resource_group_name":{"type":"string","optional":true},"managed_resources_network_access_type":{"type":"string","optional":true,"default":"Public"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sap_fqdn":{"type":"string","required":true},"sap_product":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"single_server_configuration":{"nesting_mode":3,"block":{"attributes":{"app_resource_group_name":{"type":"string","required":true},"database_type":{"type":"string","optional":true},"secondary_ip_enabled":{"type":"bool","optional":true,"default":false},"subnet_id":{"type":"string","required":true}},"block_types":{"disk_volume_configuration":{"nesting_mode":4,"block":{"attributes":{"number_of_disks":{"type":"number","required":true},"size_in_gb":{"type":"number","required":true},"sku_name":{"type":"string","required":true},"volume_name":{"type":"string","required":true}}},"optional":true},"virtual_machine_configuration":{"nesting_mode":3,"block":{"attributes":{"virtual_machine_size":{"type":"string","required":true}},"block_types":{"image":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"admin_username":{"type":"string","required":true},"ssh_private_key":{"type":"string","required":true},"ssh_public_key":{"type":"string","required":true}}},"required":true}}},"required":true},"virtual_machine_resource_names":{"nesting_mode":3,"block":{"attributes":{"host_name":{"type":"string","optional":true,"at_least_one_of":["single_server_configuration.0.virtual_machine_resource_names.0.data_disk","single_server_configuration.0.virtual_machine_resource_names.0.host_name","single_server_configuration.0.virtual_machine_resource_names.0.network_interface_names","single_server_configuration.0.virtual_machine_resource_names.0.os_disk_name","single_server_configuration.0.virtual_machine_resource_names.0.virtual_machine_name"]},"network_interface_names":{"type":["list","string"],"optional":true,"at_least_one_of":["single_server_configuration.0.virtual_machine_resource_names.0.data_disk","single_server_configuration.0.virtual_machine_resource_names.0.host_name","single_server_configuration.0.virtual_machine_resource_names.0.network_interface_names","single_server_configuration.0.virtual_machine_resource_names.0.os_disk_name","single_server_configuration.0.virtual_machine_resource_names.0.virtual_machine_name"]},"os_disk_name":{"type":"string","optional":true,"at_least_one_of":["single_server_configuration.0.virtual_machine_resource_names.0.data_disk","single_server_configuration.0.virtual_machine_resource_names.0.host_name","single_server_configuration.0.virtual_machine_resource_names.0.network_interface_names","single_server_configuration.0.virtual_machine_resource_names.0.os_disk_name","single_server_configuration.0.virtual_machine_resource_names.0.virtual_machine_name"]},"virtual_machine_name":{"type":"string","optional":true,"at_least_one_of":["single_server_configuration.0.virtual_machine_resource_names.0.data_disk","single_server_configuration.0.virtual_machine_resource_names.0.host_name","single_server_configuration.0.virtual_machine_resource_names.0.network_interface_names","single_server_configuration.0.virtual_machine_resource_names.0.os_disk_name","single_server_configuration.0.virtual_machine_resource_names.0.virtual_machine_name"]}},"block_types":{"data_disk":{"nesting_mode":4,"block":{"attributes":{"names":{"type":["list","string"],"required":true},"volume_name":{"type":"string","required":true}}},"optional":true,"at_least_one_of":["single_server_configuration.0.virtual_machine_resource_names.0.data_disk","single_server_configuration.0.virtual_machine_resource_names.0.host_name","single_server_configuration.0.virtual_machine_resource_names.0.network_interface_names","single_server_configuration.0.virtual_machine_resource_names.0.os_disk_name","single_server_configuration.0.virtual_machine_resource_names.0.virtual_machine_name"]}}},"optional":true}}},"required":true}}}},"azurerm_workloads_sap_three_tier_virtual_instance":{"block":{"attributes":{"app_location":{"type":"string","required":true},"environment":{"type":"string","required":true},"location":{"type":"string","required":true},"managed_resource_group_name":{"type":"string","optional":true},"managed_resources_network_access_type":{"type":"string","optional":true,"default":"Public"},"name":{"type":"string","required":true},"resource_group_name":{"type":"string","required":true},"sap_fqdn":{"type":"string","required":true},"sap_product":{"type":"string","required":true},"tags":{"type":["map","string"],"optional":true}},"block_types":{"identity":{"nesting_mode":3,"block":{"attributes":{"identity_ids":{"type":["set","string"],"required":true},"type":{"type":"string","required":true}}},"optional":true},"three_tier_configuration":{"nesting_mode":3,"block":{"attributes":{"app_resource_group_name":{"type":"string","required":true},"high_availability_type":{"type":"string","optional":true},"secondary_ip_enabled":{"type":"bool","optional":true,"default":false}},"block_types":{"application_server_configuration":{"nesting_mode":3,"block":{"attributes":{"instance_count":{"type":"number","required":true},"subnet_id":{"type":"string","required":true}},"block_types":{"virtual_machine_configuration":{"nesting_mode":3,"block":{"attributes":{"virtual_machine_size":{"type":"string","required":true}},"block_types":{"image":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"admin_username":{"type":"string","required":true},"ssh_private_key":{"type":"string","required":true},"ssh_public_key":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true},"central_server_configuration":{"nesting_mode":3,"block":{"attributes":{"instance_count":{"type":"number","required":true},"subnet_id":{"type":"string","required":true}},"block_types":{"virtual_machine_configuration":{"nesting_mode":3,"block":{"attributes":{"virtual_machine_size":{"type":"string","required":true}},"block_types":{"image":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"admin_username":{"type":"string","required":true},"ssh_private_key":{"type":"string","required":true},"ssh_public_key":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true},"database_server_configuration":{"nesting_mode":3,"block":{"attributes":{"database_type":{"type":"string","optional":true},"instance_count":{"type":"number","required":true},"subnet_id":{"type":"string","required":true}},"block_types":{"disk_volume_configuration":{"nesting_mode":4,"block":{"attributes":{"number_of_disks":{"type":"number","required":true},"size_in_gb":{"type":"number","required":true},"sku_name":{"type":"string","required":true},"volume_name":{"type":"string","required":true}}},"optional":true},"virtual_machine_configuration":{"nesting_mode":3,"block":{"attributes":{"virtual_machine_size":{"type":"string","required":true}},"block_types":{"image":{"nesting_mode":3,"block":{"attributes":{"offer":{"type":"string","required":true},"publisher":{"type":"string","required":true},"sku":{"type":"string","required":true},"version":{"type":"string","required":true}}},"required":true},"os_profile":{"nesting_mode":3,"block":{"attributes":{"admin_username":{"type":"string","required":true},"ssh_private_key":{"type":"string","required":true},"ssh_public_key":{"type":"string","required":true}}},"required":true}}},"required":true}}},"required":true},"resource_names":{"nesting_mode":3,"block":{"block_types":{"application_server":{"nesting_mode":3,"block":{"attributes":{"availability_set_name":{"type":"string","optional":true}},"block_types":{"virtual_machine":{"nesting_mode":3,"block":{"attributes":{"host_name":{"type":"string","optional":true},"network_interface_names":{"type":["list","string"],"optional":true},"os_disk_name":{"type":"string","optional":true},"virtual_machine_name":{"type":"string","optional":true}},"block_types":{"data_disk":{"nesting_mode":4,"block":{"attributes":{"names":{"type":["list","string"],"required":true},"volume_name":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"central_server":{"nesting_mode":3,"block":{"attributes":{"availability_set_name":{"type":"string","optional":true}},"block_types":{"load_balancer":{"nesting_mode":3,"block":{"attributes":{"backend_pool_names":{"type":["list","string"],"optional":true},"frontend_ip_configuration_names":{"type":["list","string"],"optional":true},"health_probe_names":{"type":["list","string"],"optional":true},"name":{"type":"string","optional":true}}},"optional":true},"virtual_machine":{"nesting_mode":3,"block":{"attributes":{"host_name":{"type":"string","optional":true},"network_interface_names":{"type":["list","string"],"optional":true},"os_disk_name":{"type":"string","optional":true},"virtual_machine_name":{"type":"string","optional":true}},"block_types":{"data_disk":{"nesting_mode":4,"block":{"attributes":{"names":{"type":["list","string"],"required":true},"volume_name":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"database_server":{"nesting_mode":3,"block":{"attributes":{"availability_set_name":{"type":"string","optional":true}},"block_types":{"load_balancer":{"nesting_mode":3,"block":{"attributes":{"backend_pool_names":{"type":["list","string"],"optional":true},"frontend_ip_configuration_names":{"type":["list","string"],"optional":true},"health_probe_names":{"type":["list","string"],"optional":true},"name":{"type":"string","optional":true}}},"optional":true},"virtual_machine":{"nesting_mode":3,"block":{"attributes":{"host_name":{"type":"string","optional":true},"network_interface_names":{"type":["list","string"],"optional":true},"os_disk_name":{"type":"string","optional":true},"virtual_machine_name":{"type":"string","optional":true}},"block_types":{"data_disk":{"nesting_mode":4,"block":{"attributes":{"names":{"type":["list","string"],"required":true},"volume_name":{"type":"string","required":true}}},"optional":true}}},"optional":true}}},"optional":true},"shared_storage":{"nesting_mode":3,"block":{"attributes":{"account_name":{"type":"string","optional":true},"private_endpoint_name":{"type":"string","optional":true}}},"optional":true}}},"optional":true},"transport_create_and_mount":{"nesting_mode":3,"block":{"attributes":{"resource_group_id":{"type":"string","optional":true},"storage_account_name":{"type":"string","optional":true}}},"optional":true}}},"required":true}}}}}}`) if err := json.Unmarshal(b, &ProviderSchemaInfo); err != nil { fmt.Fprintf(os.Stderr, "unmarshalling the provider schema: %s", err) os.Exit(1) diff --git a/go.mod b/go.mod index 1166c5d4..127a3588 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( github.com/hashicorp/terraform-exec v0.21.0 github.com/hashicorp/terraform-json v0.22.1 github.com/hashicorp/terraform-plugin-sdk/v2 v2.34.0 - github.com/magodo/aztft v0.3.1-0.20250911234526-2507731ccf2e + github.com/magodo/aztft v0.3.1-0.20251115232612-bd81c936d4f1 github.com/magodo/tfadd v0.10.1-0.20240902124619-bd18a56f410d github.com/mitchellh/cli v1.1.5 github.com/zclconf/go-cty v1.15.0 @@ -54,9 +54,11 @@ require ( github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/netapp/armnetapp/v7 v7.7.0 // indirect github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6 v6.2.0 // indirect github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/operationalinsights/armoperationalinsights v1.2.0 // indirect + github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase v1.1.0 // indirect github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/paloaltonetworksngfw/armpanngfw v1.1.0 // indirect github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup/v4 v4.2.0 // indirect github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicessiterecovery/v2 v2.4.0 // indirect + github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise v1.2.0 // indirect github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armdeploymentscripts/v2 v2.1.0 // indirect github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/securityinsights/armsecurityinsights/v2 v2.0.0-beta.4 // indirect github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/sql/armsql v1.2.0 // indirect diff --git a/go.sum b/go.sum index 5ac4635e..3df9ec3b 100644 --- a/go.sum +++ b/go.sum @@ -72,12 +72,16 @@ github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6 v6.2 github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6 v6.2.0/go.mod h1:ulHyBFJOI0ONiRL4vcJTmS7rx18jQQlEPmAgo80cRdM= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/operationalinsights/armoperationalinsights v1.2.0 h1:4FlNvfcPu7tTvOgOzXxIbZLvwvmZq1OdhQUdIa9g2N4= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/operationalinsights/armoperationalinsights v1.2.0/go.mod h1:A4nzEXwVd5pAyneR6KOvUAo72svUc5rmCzRHhAbP6lA= +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase v1.1.0 h1:LqBbY0ajYSmAs3lUdfRPcPDllPqsX51Vjf1ScZ2KONI= +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase v1.1.0/go.mod h1:PrqKV+/w4SwpgMUN/6PX39Va76OyRE8fD2mHd5h0ocU= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/paloaltonetworksngfw/armpanngfw v1.1.0 h1:l7R5KiDnWg6UWIPTJM6IZBEuC8Baggds4fSju8s8jsk= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/paloaltonetworksngfw/armpanngfw v1.1.0/go.mod h1:fue9nIyAfRRmBkpwfcPfoorEeQaVzOplTtFJPtAlerE= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup/v4 v4.2.0 h1:GOtQKZTIc4/HnWIEqGqtkMHLXIlwa4GpT8BB5JGH+tc= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup/v4 v4.2.0/go.mod h1:o1BW30aoyqKYcQKAMNWs0UAkT30Z2FZzmCNo7hrGHjM= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicessiterecovery/v2 v2.4.0 h1:1/IElew5rgk1/rYC3Cftd/c3xRsZS1mil7IMNQ0E1Dk= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicessiterecovery/v2 v2.4.0/go.mod h1:4gac/7LcHn+eBJVG/uOtieALAej7WZc3IpzVRqmlovk= +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise v1.2.0 h1:hTmVmyvriwO+ymGLEsH7HZokVwinC2MZl8F0LjvPdHU= +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise v1.2.0/go.mod h1:uHEpZj4TWSZEp35rIByJ8RX7hQBm3bxfPxS4tiz+x+g= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armdeploymentscripts v1.0.0 h1:qd/BfXBy0s/cPn/hVVX+Ps0HolpC1NsHE2p+L2zB4C4= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armdeploymentscripts v1.0.0/go.mod h1:P1SgXux7JvaLh0fwpYwtY2csL+RYAc033mNha1Txlm8= github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armdeploymentscripts/v2 v2.1.0 h1:7ecO0WTi0f+PkUxx+aiVV47fWlEvnWK5U/ugVIkA2AI= @@ -233,8 +237,8 @@ github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0 github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= github.com/magodo/armid v0.0.0-20250724105512-5cedfa9dd8e2 h1:VsPUbgpitfe1ZtpkoNfEjZuGHx0vqtYJ6DDLQUZKeWo= github.com/magodo/armid v0.0.0-20250724105512-5cedfa9dd8e2/go.mod h1:rR8E7zfGMbmfnSQvrkFiWYdhrfTqsVSltelnZB09BwA= -github.com/magodo/aztft v0.3.1-0.20250911234526-2507731ccf2e h1:pJQGuQdpLaoxtZ528cYmIfNgKdYfbE5K80owEB2rh6A= -github.com/magodo/aztft v0.3.1-0.20250911234526-2507731ccf2e/go.mod h1:t83k9NbdobHHhjtz6MFetOSRqiKfaNfbBpowxZyzYtw= +github.com/magodo/aztft v0.3.1-0.20251115232612-bd81c936d4f1 h1:Pn7dB852qubHmh1rw77hg9y7w186Osh1sFOX1sw4EIc= +github.com/magodo/aztft v0.3.1-0.20251115232612-bd81c936d4f1/go.mod h1:UzAqtQ+ruBldesaODTTNBBibZXxco4uXH1ZxWElssm0= github.com/magodo/tfadd v0.10.1-0.20240902124619-bd18a56f410d h1:dmS4jSfNIfshWkh43yK4n1Qx0BsaKrfxMiqRg0fKKYw= github.com/magodo/tfadd v0.10.1-0.20240902124619-bd18a56f410d/go.mod h1:G2Hc13YaLGHa+CPEP/HZzj9sIGyKDM5ZXInzQ8Dp86s= github.com/magodo/tfpluginschema v0.0.0-20240902090353-0525d7d8c1c2 h1:Unxx8WLxzSxINnq7hItp4cXD7drihgfPltTd91efoBo= diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/CHANGELOG.md b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/CHANGELOG.md new file mode 100644 index 00000000..f2f0a021 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/CHANGELOG.md @@ -0,0 +1,135 @@ +# Release History + +## 1.1.0 (2025-06-04) + +### Features Added + +- New value `DataBaseTypeCloneFromBackupTimestamp`, `DataBaseTypeCrossRegionDisasterRecovery` added to enum type `DataBaseType` +- New enum type `AddSubscriptionOperationState` with values `AddSubscriptionOperationStateFailed`, `AddSubscriptionOperationStateSucceeded`, `AddSubscriptionOperationStateUpdating` +- New enum type `ExadbVMClusterLifecycleState` with values `ExadbVMClusterLifecycleStateAvailable`, `ExadbVMClusterLifecycleStateFailed`, `ExadbVMClusterLifecycleStateMaintenanceInProgress`, `ExadbVMClusterLifecycleStateProvisioning`, `ExadbVMClusterLifecycleStateTerminated`, `ExadbVMClusterLifecycleStateTerminating`, `ExadbVMClusterLifecycleStateUpdating` +- New enum type `ExascaleDbStorageVaultLifecycleState` with values `ExascaleDbStorageVaultLifecycleStateAvailable`, `ExascaleDbStorageVaultLifecycleStateFailed`, `ExascaleDbStorageVaultLifecycleStateProvisioning`, `ExascaleDbStorageVaultLifecycleStateTerminated`, `ExascaleDbStorageVaultLifecycleStateTerminating`, `ExascaleDbStorageVaultLifecycleStateUpdating` +- New enum type `GridImageType` with values `GridImageTypeCustomImage`, `GridImageTypeReleaseUpdate` +- New enum type `HardwareType` with values `HardwareTypeCELL`, `HardwareTypeCOMPUTE` +- New enum type `ShapeFamily` with values `ShapeFamilyExadata`, `ShapeFamilyExadbXs` +- New enum type `SystemShapes` with values `SystemShapesExaDbXs`, `SystemShapesExadataX11M`, `SystemShapesExadataX9M` +- New function `*AutonomousDatabaseCrossRegionDisasterRecoveryProperties.GetAutonomousDatabaseBaseProperties() *AutonomousDatabaseBaseProperties` +- New function `*AutonomousDatabaseFromBackupTimestampProperties.GetAutonomousDatabaseBaseProperties() *AutonomousDatabaseBaseProperties` +- New function `*AutonomousDatabasesClient.BeginChangeDisasterRecoveryConfiguration(context.Context, string, string, DisasterRecoveryConfigurationDetails, *AutonomousDatabasesClientBeginChangeDisasterRecoveryConfigurationOptions) (*runtime.Poller[AutonomousDatabasesClientChangeDisasterRecoveryConfigurationResponse], error)` +- New function `*ClientFactory.NewExadbVMClustersClient() *ExadbVMClustersClient` +- New function `*ClientFactory.NewExascaleDbNodesClient() *ExascaleDbNodesClient` +- New function `*ClientFactory.NewExascaleDbStorageVaultsClient() *ExascaleDbStorageVaultsClient` +- New function `*ClientFactory.NewFlexComponentsClient() *FlexComponentsClient` +- New function `*ClientFactory.NewGiMinorVersionsClient() *GiMinorVersionsClient` +- New function `NewExadbVMClustersClient(string, azcore.TokenCredential, *arm.ClientOptions) (*ExadbVMClustersClient, error)` +- New function `*ExadbVMClustersClient.BeginCreateOrUpdate(context.Context, string, string, ExadbVMCluster, *ExadbVMClustersClientBeginCreateOrUpdateOptions) (*runtime.Poller[ExadbVMClustersClientCreateOrUpdateResponse], error)` +- New function `*ExadbVMClustersClient.BeginDelete(context.Context, string, string, *ExadbVMClustersClientBeginDeleteOptions) (*runtime.Poller[ExadbVMClustersClientDeleteResponse], error)` +- New function `*ExadbVMClustersClient.Get(context.Context, string, string, *ExadbVMClustersClientGetOptions) (ExadbVMClustersClientGetResponse, error)` +- New function `*ExadbVMClustersClient.NewListByResourceGroupPager(string, *ExadbVMClustersClientListByResourceGroupOptions) *runtime.Pager[ExadbVMClustersClientListByResourceGroupResponse]` +- New function `*ExadbVMClustersClient.NewListBySubscriptionPager(*ExadbVMClustersClientListBySubscriptionOptions) *runtime.Pager[ExadbVMClustersClientListBySubscriptionResponse]` +- New function `*ExadbVMClustersClient.BeginRemoveVMs(context.Context, string, string, RemoveVirtualMachineFromExadbVMClusterDetails, *ExadbVMClustersClientBeginRemoveVMsOptions) (*runtime.Poller[ExadbVMClustersClientRemoveVMsResponse], error)` +- New function `*ExadbVMClustersClient.BeginUpdate(context.Context, string, string, ExadbVMClusterUpdate, *ExadbVMClustersClientBeginUpdateOptions) (*runtime.Poller[ExadbVMClustersClientUpdateResponse], error)` +- New function `NewExascaleDbNodesClient(string, azcore.TokenCredential, *arm.ClientOptions) (*ExascaleDbNodesClient, error)` +- New function `*ExascaleDbNodesClient.BeginAction(context.Context, string, string, string, DbNodeAction, *ExascaleDbNodesClientBeginActionOptions) (*runtime.Poller[ExascaleDbNodesClientActionResponse], error)` +- New function `*ExascaleDbNodesClient.Get(context.Context, string, string, string, *ExascaleDbNodesClientGetOptions) (ExascaleDbNodesClientGetResponse, error)` +- New function `*ExascaleDbNodesClient.NewListByParentPager(string, string, *ExascaleDbNodesClientListByParentOptions) *runtime.Pager[ExascaleDbNodesClientListByParentResponse]` +- New function `NewExascaleDbStorageVaultsClient(string, azcore.TokenCredential, *arm.ClientOptions) (*ExascaleDbStorageVaultsClient, error)` +- New function `*ExascaleDbStorageVaultsClient.BeginCreate(context.Context, string, string, ExascaleDbStorageVault, *ExascaleDbStorageVaultsClientBeginCreateOptions) (*runtime.Poller[ExascaleDbStorageVaultsClientCreateResponse], error)` +- New function `*ExascaleDbStorageVaultsClient.BeginDelete(context.Context, string, string, *ExascaleDbStorageVaultsClientBeginDeleteOptions) (*runtime.Poller[ExascaleDbStorageVaultsClientDeleteResponse], error)` +- New function `*ExascaleDbStorageVaultsClient.Get(context.Context, string, string, *ExascaleDbStorageVaultsClientGetOptions) (ExascaleDbStorageVaultsClientGetResponse, error)` +- New function `*ExascaleDbStorageVaultsClient.NewListByResourceGroupPager(string, *ExascaleDbStorageVaultsClientListByResourceGroupOptions) *runtime.Pager[ExascaleDbStorageVaultsClientListByResourceGroupResponse]` +- New function `*ExascaleDbStorageVaultsClient.NewListBySubscriptionPager(*ExascaleDbStorageVaultsClientListBySubscriptionOptions) *runtime.Pager[ExascaleDbStorageVaultsClientListBySubscriptionResponse]` +- New function `*ExascaleDbStorageVaultsClient.BeginUpdate(context.Context, string, string, ExascaleDbStorageVaultTagsUpdate, *ExascaleDbStorageVaultsClientBeginUpdateOptions) (*runtime.Poller[ExascaleDbStorageVaultsClientUpdateResponse], error)` +- New function `NewFlexComponentsClient(string, azcore.TokenCredential, *arm.ClientOptions) (*FlexComponentsClient, error)` +- New function `*FlexComponentsClient.Get(context.Context, string, string, *FlexComponentsClientGetOptions) (FlexComponentsClientGetResponse, error)` +- New function `*FlexComponentsClient.NewListByParentPager(string, *FlexComponentsClientListByParentOptions) *runtime.Pager[FlexComponentsClientListByParentResponse]` +- New function `NewGiMinorVersionsClient(string, azcore.TokenCredential, *arm.ClientOptions) (*GiMinorVersionsClient, error)` +- New function `*GiMinorVersionsClient.Get(context.Context, string, string, string, *GiMinorVersionsClientGetOptions) (GiMinorVersionsClientGetResponse, error)` +- New function `*GiMinorVersionsClient.NewListByParentPager(string, string, *GiMinorVersionsClientListByParentOptions) *runtime.Pager[GiMinorVersionsClientListByParentResponse]` +- New function `*OracleSubscriptionsClient.BeginAddAzureSubscriptions(context.Context, AzureSubscriptions, *OracleSubscriptionsClientBeginAddAzureSubscriptionsOptions) (*runtime.Poller[OracleSubscriptionsClientAddAzureSubscriptionsResponse], error)` +- New struct `AutonomousDatabaseCrossRegionDisasterRecoveryProperties` +- New struct `AutonomousDatabaseFromBackupTimestampProperties` +- New struct `AzureSubscriptions` +- New struct `DbActionResponse` +- New struct `DbNodeDetails` +- New struct `DefinedFileSystemConfiguration` +- New struct `DisasterRecoveryConfigurationDetails` +- New struct `ExadbVMCluster` +- New struct `ExadbVMClusterListResult` +- New struct `ExadbVMClusterProperties` +- New struct `ExadbVMClusterStorageDetails` +- New struct `ExadbVMClusterUpdate` +- New struct `ExadbVMClusterUpdateProperties` +- New struct `ExascaleDbNode` +- New struct `ExascaleDbNodeListResult` +- New struct `ExascaleDbNodeProperties` +- New struct `ExascaleDbStorageDetails` +- New struct `ExascaleDbStorageInputDetails` +- New struct `ExascaleDbStorageVault` +- New struct `ExascaleDbStorageVaultListResult` +- New struct `ExascaleDbStorageVaultProperties` +- New struct `ExascaleDbStorageVaultTagsUpdate` +- New struct `FileSystemConfigurationDetails` +- New struct `FlexComponent` +- New struct `FlexComponentListResult` +- New struct `FlexComponentProperties` +- New struct `GiMinorVersion` +- New struct `GiMinorVersionListResult` +- New struct `GiMinorVersionProperties` +- New struct `RemoveVirtualMachineFromExadbVMClusterDetails` +- New field `RemoteDisasterRecoveryConfiguration`, `TimeDisasterRecoveryRoleChanged` in struct `AutonomousDatabaseCloneProperties` +- New field `RemoteDisasterRecoveryConfiguration`, `TimeDisasterRecoveryRoleChanged` in struct `AutonomousDatabaseProperties` +- New field `ComputeModel`, `DatabaseServerType`, `DefinedFileSystemConfiguration`, `StorageServerType` in struct `CloudExadataInfrastructureProperties` +- New field `ComputeModel`, `FileSystemConfigurationDetails` in struct `CloudVMClusterProperties` +- New field `FileSystemConfigurationDetails` in struct `CloudVMClusterUpdateProperties` +- New field `ComputeModel` in struct `DbServerProperties` +- New field `AreServerTypesSupported`, `ComputeModel`, `DisplayName`, `ShapeName` in struct `DbSystemShapeProperties` +- New field `Zone` in struct `DbSystemShapesClientListByLocationOptions` +- New field `Shape`, `Zone` in struct `GiVersionsClientListByLocationOptions` +- New field `AddSubscriptionOperationState`, `AzureSubscriptionIDs`, `LastOperationStatusDetail` in struct `OracleSubscriptionProperties` +- New field `PeerDbLocation`, `PeerDbOcid` in struct `PeerDbDetails` + + +## 1.0.0 (2024-06-28) +### Other Changes + +- Release stable version. + + +## 0.2.0 (2024-06-26) +### Breaking Changes + +- Type of `CloudExadataInfrastructureProperties.DataStorageSizeInTbs` has been changed from `*int32` to `*float64` +- Type of `CloudVMClusterProperties.NsgCidrs` has been changed from `[]*NSGCidr` to `[]*NsgCidr` +- Type of `OracleSubscriptionUpdate.Plan` has been changed from `*ResourcePlanTypeUpdate` to `*PlanUpdate` +- Struct `NSGCidr` has been removed +- Struct `ResourcePlanTypeUpdate` has been removed +- Field `AutonomousDatabaseID`, `DatabaseSizeInTBs`, `SizeInTBs`, `Type` of struct `AutonomousDatabaseBackupProperties` has been removed + +### Features Added + +- New enum type `RepeatCadenceType` with values `RepeatCadenceTypeMonthly`, `RepeatCadenceTypeOneTime`, `RepeatCadenceTypeWeekly`, `RepeatCadenceTypeYearly` +- New function `*AutonomousDatabasesClient.BeginRestore(context.Context, string, string, RestoreAutonomousDatabaseDetails, *AutonomousDatabasesClientBeginRestoreOptions) (*runtime.Poller[AutonomousDatabasesClientRestoreResponse], error)` +- New function `*AutonomousDatabasesClient.BeginShrink(context.Context, string, string, *AutonomousDatabasesClientBeginShrinkOptions) (*runtime.Poller[AutonomousDatabasesClientShrinkResponse], error)` +- New function `*ClientFactory.NewSystemVersionsClient() *SystemVersionsClient` +- New function `NewSystemVersionsClient(string, azcore.TokenCredential, *arm.ClientOptions) (*SystemVersionsClient, error)` +- New function `*SystemVersionsClient.Get(context.Context, string, string, *SystemVersionsClientGetOptions) (SystemVersionsClientGetResponse, error)` +- New function `*SystemVersionsClient.NewListByLocationPager(string, *SystemVersionsClientListByLocationOptions) *runtime.Pager[SystemVersionsClientListByLocationResponse]` +- New struct `LongTermBackUpScheduleDetails` +- New struct `NsgCidr` +- New struct `PlanUpdate` +- New struct `RestoreAutonomousDatabaseDetails` +- New struct `SystemVersion` +- New struct `SystemVersionListResult` +- New struct `SystemVersionProperties` +- New field `AutonomousDatabaseOcid`, `BackupType`, `DatabaseSizeInTbs`, `SizeInTbs`, `TimeStarted` in struct `AutonomousDatabaseBackupProperties` +- New field `LongTermBackupSchedule`, `NextLongTermBackupTimeStamp` in struct `AutonomousDatabaseBaseProperties` +- New field `LongTermBackupSchedule`, `NextLongTermBackupTimeStamp` in struct `AutonomousDatabaseCloneProperties` +- New field `LongTermBackupSchedule`, `NextLongTermBackupTimeStamp` in struct `AutonomousDatabaseProperties` +- New field `LongTermBackupSchedule` in struct `AutonomousDatabaseUpdateProperties` + + +## 0.1.0 (2024-05-24) + +The package of `github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase` is using our [next generation design principles](https://azure.github.io/azure-sdk/general_introduction.html). + +To learn more, please refer to our documentation [Quick Start](https://aka.ms/azsdk/go/mgmt). diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/LICENSE.txt b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/LICENSE.txt new file mode 100644 index 00000000..dc0c2ffb --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/LICENSE.txt @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) Microsoft Corporation. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/README.md b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/README.md new file mode 100644 index 00000000..f0ee4ce2 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/README.md @@ -0,0 +1,90 @@ +# Azure Oracle Database Module for Go + +The `armoracledatabase` module provides operations for working with Azure Oracle Database. + +[Source code](https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/resourcemanager/oracledatabase/armoracledatabase) + +# Getting started + +## Prerequisites + +- an [Azure subscription](https://azure.microsoft.com/free/) +- [Supported](https://aka.ms/azsdk/go/supported-versions) version of Go (You could download and install the latest version of Go from [here](https://go.dev/doc/install). It will replace the existing Go on your machine. If you want to install multiple Go versions on the same machine, you could refer this [doc](https://go.dev/doc/manage-install).) + +## Install the package + +This project uses [Go modules](https://github.com/golang/go/wiki/Modules) for versioning and dependency management. + +Install the Azure Oracle Database module: + +```sh +go get github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/v2 +``` + +## Authorization + +When creating a client, you will need to provide a credential for authenticating with Azure Oracle Database. The `azidentity` module provides facilities for various ways of authenticating with Azure including client/secret, certificate, managed identity, and more. + +```go +cred, err := azidentity.NewDefaultAzureCredential(nil) +``` + +For more information on authentication, please see the documentation for `azidentity` at [pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity). + +## Client Factory + +Azure Oracle Database module consists of one or more clients. We provide a client factory which could be used to create any client in this module. + +```go +clientFactory, err := armoracledatabase.NewClientFactory(, cred, nil) +``` + +You can use `ClientOptions` in package `github.com/Azure/azure-sdk-for-go/sdk/azcore/arm` to set endpoint to connect with public and sovereign clouds as well as Azure Stack. For more information, please see the documentation for `azcore` at [pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore). + +```go +options := arm.ClientOptions { + ClientOptions: azcore.ClientOptions { + Cloud: cloud.AzureChina, + }, +} +clientFactory, err := armoracledatabase.NewClientFactory(, cred, &options) +``` + +## Clients + +A client groups a set of related APIs, providing access to its functionality. Create one or more clients to access the APIs you require using client factory. + +```go +client := clientFactory.NewAutonomousDatabaseBackupsClient() +``` + +## Fakes + +The fake package contains types used for constructing in-memory fake servers used in unit tests. +This allows writing tests to cover various success/error conditions without the need for connecting to a live service. + +Please see https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/samples/fakes for details and examples on how to use fakes. + +## Provide Feedback + +If you encounter bugs or have suggestions, please +[open an issue](https://github.com/Azure/azure-sdk-for-go/issues) and assign the `Oracle Database` label. + +# Contributing + +This project welcomes contributions and suggestions. Most contributions require +you to agree to a Contributor License Agreement (CLA) declaring that you have +the right to, and actually do, grant us the rights to use your contribution. +For details, visit [https://cla.microsoft.com](https://cla.microsoft.com). + +When you submit a pull request, a CLA-bot will automatically determine whether +you need to provide a CLA and decorate the PR appropriately (e.g., label, +comment). Simply follow the instructions provided by the bot. You will only +need to do this once across all repos using our CLA. + +This project has adopted the +[Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). +For more information, see the +[Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) +or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any +additional questions or comments. diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/_metadata.json b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/_metadata.json new file mode 100644 index 00000000..a508bf57 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/_metadata.json @@ -0,0 +1,4 @@ +{ + "apiVersion": "2025-03-01", + "emitterVersion": "0.4.10" +} \ No newline at end of file diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabasebackups_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabasebackups_client.go new file mode 100644 index 00000000..cb785aa8 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabasebackups_client.go @@ -0,0 +1,428 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// AutonomousDatabaseBackupsClient contains the methods for the AutonomousDatabaseBackups group. +// Don't use this type directly, use NewAutonomousDatabaseBackupsClient() instead. +type AutonomousDatabaseBackupsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewAutonomousDatabaseBackupsClient creates a new instance of AutonomousDatabaseBackupsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewAutonomousDatabaseBackupsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*AutonomousDatabaseBackupsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &AutonomousDatabaseBackupsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginCreateOrUpdate - Create a AutonomousDatabaseBackup +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - adbbackupid - AutonomousDatabaseBackup id +// - resource - Resource create parameters. +// - options - AutonomousDatabaseBackupsClientBeginCreateOrUpdateOptions contains the optional parameters for the AutonomousDatabaseBackupsClient.BeginCreateOrUpdate +// method. +func (client *AutonomousDatabaseBackupsClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, resource AutonomousDatabaseBackup, options *AutonomousDatabaseBackupsClientBeginCreateOrUpdateOptions) (*runtime.Poller[AutonomousDatabaseBackupsClientCreateOrUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.createOrUpdate(ctx, resourceGroupName, autonomousdatabasename, adbbackupid, resource, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabaseBackupsClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabaseBackupsClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// CreateOrUpdate - Create a AutonomousDatabaseBackup +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabaseBackupsClient) createOrUpdate(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, resource AutonomousDatabaseBackup, options *AutonomousDatabaseBackupsClientBeginCreateOrUpdateOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabaseBackupsClient.BeginCreateOrUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, autonomousdatabasename, adbbackupid, resource, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// createOrUpdateCreateRequest creates the CreateOrUpdate request. +func (client *AutonomousDatabaseBackupsClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, resource AutonomousDatabaseBackup, _ *AutonomousDatabaseBackupsClientBeginCreateOrUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/autonomousDatabaseBackups/{adbbackupid}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + if adbbackupid == "" { + return nil, errors.New("parameter adbbackupid cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{adbbackupid}", url.PathEscape(adbbackupid)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, resource); err != nil { + return nil, err + } + return req, nil +} + +// BeginDelete - Delete a AutonomousDatabaseBackup +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - adbbackupid - AutonomousDatabaseBackup id +// - options - AutonomousDatabaseBackupsClientBeginDeleteOptions contains the optional parameters for the AutonomousDatabaseBackupsClient.BeginDelete +// method. +func (client *AutonomousDatabaseBackupsClient) BeginDelete(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, options *AutonomousDatabaseBackupsClientBeginDeleteOptions) (*runtime.Poller[AutonomousDatabaseBackupsClientDeleteResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.deleteOperation(ctx, resourceGroupName, autonomousdatabasename, adbbackupid, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabaseBackupsClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabaseBackupsClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Delete - Delete a AutonomousDatabaseBackup +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabaseBackupsClient) deleteOperation(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, options *AutonomousDatabaseBackupsClientBeginDeleteOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabaseBackupsClient.BeginDelete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, resourceGroupName, autonomousdatabasename, adbbackupid, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusAccepted, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *AutonomousDatabaseBackupsClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, _ *AutonomousDatabaseBackupsClientBeginDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/autonomousDatabaseBackups/{adbbackupid}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + if adbbackupid == "" { + return nil, errors.New("parameter adbbackupid cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{adbbackupid}", url.PathEscape(adbbackupid)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// Get - Get a AutonomousDatabaseBackup +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - adbbackupid - AutonomousDatabaseBackup id +// - options - AutonomousDatabaseBackupsClientGetOptions contains the optional parameters for the AutonomousDatabaseBackupsClient.Get +// method. +func (client *AutonomousDatabaseBackupsClient) Get(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, options *AutonomousDatabaseBackupsClientGetOptions) (AutonomousDatabaseBackupsClientGetResponse, error) { + var err error + const operationName = "AutonomousDatabaseBackupsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, autonomousdatabasename, adbbackupid, options) + if err != nil { + return AutonomousDatabaseBackupsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return AutonomousDatabaseBackupsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return AutonomousDatabaseBackupsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *AutonomousDatabaseBackupsClient) getCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, _ *AutonomousDatabaseBackupsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/autonomousDatabaseBackups/{adbbackupid}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + if adbbackupid == "" { + return nil, errors.New("parameter adbbackupid cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{adbbackupid}", url.PathEscape(adbbackupid)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *AutonomousDatabaseBackupsClient) getHandleResponse(resp *http.Response) (AutonomousDatabaseBackupsClientGetResponse, error) { + result := AutonomousDatabaseBackupsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDatabaseBackup); err != nil { + return AutonomousDatabaseBackupsClientGetResponse{}, err + } + return result, nil +} + +// NewListByAutonomousDatabasePager - List AutonomousDatabaseBackup resources by AutonomousDatabase +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - options - AutonomousDatabaseBackupsClientListByAutonomousDatabaseOptions contains the optional parameters for the AutonomousDatabaseBackupsClient.NewListByAutonomousDatabasePager +// method. +func (client *AutonomousDatabaseBackupsClient) NewListByAutonomousDatabasePager(resourceGroupName string, autonomousdatabasename string, options *AutonomousDatabaseBackupsClientListByAutonomousDatabaseOptions) *runtime.Pager[AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse] { + return runtime.NewPager(runtime.PagingHandler[AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse]{ + More: func(page AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse) (AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "AutonomousDatabaseBackupsClient.NewListByAutonomousDatabasePager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByAutonomousDatabaseCreateRequest(ctx, resourceGroupName, autonomousdatabasename, options) + }, nil) + if err != nil { + return AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse{}, err + } + return client.listByAutonomousDatabaseHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByAutonomousDatabaseCreateRequest creates the ListByAutonomousDatabase request. +func (client *AutonomousDatabaseBackupsClient) listByAutonomousDatabaseCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, _ *AutonomousDatabaseBackupsClientListByAutonomousDatabaseOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/autonomousDatabaseBackups" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByAutonomousDatabaseHandleResponse handles the ListByAutonomousDatabase response. +func (client *AutonomousDatabaseBackupsClient) listByAutonomousDatabaseHandleResponse(resp *http.Response) (AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse, error) { + result := AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDatabaseBackupListResult); err != nil { + return AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse{}, err + } + return result, nil +} + +// BeginUpdate - Update a AutonomousDatabaseBackup +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - adbbackupid - AutonomousDatabaseBackup id +// - properties - The resource properties to be updated. +// - options - AutonomousDatabaseBackupsClientBeginUpdateOptions contains the optional parameters for the AutonomousDatabaseBackupsClient.BeginUpdate +// method. +func (client *AutonomousDatabaseBackupsClient) BeginUpdate(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, properties AutonomousDatabaseBackupUpdate, options *AutonomousDatabaseBackupsClientBeginUpdateOptions) (*runtime.Poller[AutonomousDatabaseBackupsClientUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.update(ctx, resourceGroupName, autonomousdatabasename, adbbackupid, properties, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabaseBackupsClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabaseBackupsClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Update - Update a AutonomousDatabaseBackup +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabaseBackupsClient) update(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, properties AutonomousDatabaseBackupUpdate, options *AutonomousDatabaseBackupsClientBeginUpdateOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabaseBackupsClient.BeginUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.updateCreateRequest(ctx, resourceGroupName, autonomousdatabasename, adbbackupid, properties, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// updateCreateRequest creates the Update request. +func (client *AutonomousDatabaseBackupsClient) updateCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, adbbackupid string, properties AutonomousDatabaseBackupUpdate, _ *AutonomousDatabaseBackupsClientBeginUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/autonomousDatabaseBackups/{adbbackupid}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + if adbbackupid == "" { + return nil, errors.New("parameter adbbackupid cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{adbbackupid}", url.PathEscape(adbbackupid)) + req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, properties); err != nil { + return nil, err + } + return req, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabasecharactersets_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabasecharactersets_client.go new file mode 100644 index 00000000..27037067 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabasecharactersets_client.go @@ -0,0 +1,165 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// AutonomousDatabaseCharacterSetsClient contains the methods for the AutonomousDatabaseCharacterSets group. +// Don't use this type directly, use NewAutonomousDatabaseCharacterSetsClient() instead. +type AutonomousDatabaseCharacterSetsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewAutonomousDatabaseCharacterSetsClient creates a new instance of AutonomousDatabaseCharacterSetsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewAutonomousDatabaseCharacterSetsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*AutonomousDatabaseCharacterSetsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &AutonomousDatabaseCharacterSetsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a AutonomousDatabaseCharacterSet +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - adbscharsetname - AutonomousDatabaseCharacterSet name +// - options - AutonomousDatabaseCharacterSetsClientGetOptions contains the optional parameters for the AutonomousDatabaseCharacterSetsClient.Get +// method. +func (client *AutonomousDatabaseCharacterSetsClient) Get(ctx context.Context, location string, adbscharsetname string, options *AutonomousDatabaseCharacterSetsClientGetOptions) (AutonomousDatabaseCharacterSetsClientGetResponse, error) { + var err error + const operationName = "AutonomousDatabaseCharacterSetsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, adbscharsetname, options) + if err != nil { + return AutonomousDatabaseCharacterSetsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return AutonomousDatabaseCharacterSetsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return AutonomousDatabaseCharacterSetsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *AutonomousDatabaseCharacterSetsClient) getCreateRequest(ctx context.Context, location string, adbscharsetname string, _ *AutonomousDatabaseCharacterSetsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/autonomousDatabaseCharacterSets/{adbscharsetname}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if adbscharsetname == "" { + return nil, errors.New("parameter adbscharsetname cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{adbscharsetname}", url.PathEscape(adbscharsetname)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *AutonomousDatabaseCharacterSetsClient) getHandleResponse(resp *http.Response) (AutonomousDatabaseCharacterSetsClientGetResponse, error) { + result := AutonomousDatabaseCharacterSetsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDatabaseCharacterSet); err != nil { + return AutonomousDatabaseCharacterSetsClientGetResponse{}, err + } + return result, nil +} + +// NewListByLocationPager - List AutonomousDatabaseCharacterSet resources by SubscriptionLocationResource +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - options - AutonomousDatabaseCharacterSetsClientListByLocationOptions contains the optional parameters for the AutonomousDatabaseCharacterSetsClient.NewListByLocationPager +// method. +func (client *AutonomousDatabaseCharacterSetsClient) NewListByLocationPager(location string, options *AutonomousDatabaseCharacterSetsClientListByLocationOptions) *runtime.Pager[AutonomousDatabaseCharacterSetsClientListByLocationResponse] { + return runtime.NewPager(runtime.PagingHandler[AutonomousDatabaseCharacterSetsClientListByLocationResponse]{ + More: func(page AutonomousDatabaseCharacterSetsClientListByLocationResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *AutonomousDatabaseCharacterSetsClientListByLocationResponse) (AutonomousDatabaseCharacterSetsClientListByLocationResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "AutonomousDatabaseCharacterSetsClient.NewListByLocationPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByLocationCreateRequest(ctx, location, options) + }, nil) + if err != nil { + return AutonomousDatabaseCharacterSetsClientListByLocationResponse{}, err + } + return client.listByLocationHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByLocationCreateRequest creates the ListByLocation request. +func (client *AutonomousDatabaseCharacterSetsClient) listByLocationCreateRequest(ctx context.Context, location string, _ *AutonomousDatabaseCharacterSetsClientListByLocationOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/autonomousDatabaseCharacterSets" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByLocationHandleResponse handles the ListByLocation response. +func (client *AutonomousDatabaseCharacterSetsClient) listByLocationHandleResponse(resp *http.Response) (AutonomousDatabaseCharacterSetsClientListByLocationResponse, error) { + result := AutonomousDatabaseCharacterSetsClientListByLocationResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDatabaseCharacterSetListResult); err != nil { + return AutonomousDatabaseCharacterSetsClientListByLocationResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabasenationalcharactersets_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabasenationalcharactersets_client.go new file mode 100644 index 00000000..2a333c0e --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabasenationalcharactersets_client.go @@ -0,0 +1,165 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// AutonomousDatabaseNationalCharacterSetsClient contains the methods for the AutonomousDatabaseNationalCharacterSets group. +// Don't use this type directly, use NewAutonomousDatabaseNationalCharacterSetsClient() instead. +type AutonomousDatabaseNationalCharacterSetsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewAutonomousDatabaseNationalCharacterSetsClient creates a new instance of AutonomousDatabaseNationalCharacterSetsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewAutonomousDatabaseNationalCharacterSetsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*AutonomousDatabaseNationalCharacterSetsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &AutonomousDatabaseNationalCharacterSetsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a AutonomousDatabaseNationalCharacterSet +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - adbsncharsetname - AutonomousDatabaseNationalCharacterSets name +// - options - AutonomousDatabaseNationalCharacterSetsClientGetOptions contains the optional parameters for the AutonomousDatabaseNationalCharacterSetsClient.Get +// method. +func (client *AutonomousDatabaseNationalCharacterSetsClient) Get(ctx context.Context, location string, adbsncharsetname string, options *AutonomousDatabaseNationalCharacterSetsClientGetOptions) (AutonomousDatabaseNationalCharacterSetsClientGetResponse, error) { + var err error + const operationName = "AutonomousDatabaseNationalCharacterSetsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, adbsncharsetname, options) + if err != nil { + return AutonomousDatabaseNationalCharacterSetsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return AutonomousDatabaseNationalCharacterSetsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return AutonomousDatabaseNationalCharacterSetsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *AutonomousDatabaseNationalCharacterSetsClient) getCreateRequest(ctx context.Context, location string, adbsncharsetname string, _ *AutonomousDatabaseNationalCharacterSetsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/autonomousDatabaseNationalCharacterSets/{adbsncharsetname}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if adbsncharsetname == "" { + return nil, errors.New("parameter adbsncharsetname cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{adbsncharsetname}", url.PathEscape(adbsncharsetname)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *AutonomousDatabaseNationalCharacterSetsClient) getHandleResponse(resp *http.Response) (AutonomousDatabaseNationalCharacterSetsClientGetResponse, error) { + result := AutonomousDatabaseNationalCharacterSetsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDatabaseNationalCharacterSet); err != nil { + return AutonomousDatabaseNationalCharacterSetsClientGetResponse{}, err + } + return result, nil +} + +// NewListByLocationPager - List AutonomousDatabaseNationalCharacterSet resources by SubscriptionLocationResource +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - options - AutonomousDatabaseNationalCharacterSetsClientListByLocationOptions contains the optional parameters for the AutonomousDatabaseNationalCharacterSetsClient.NewListByLocationPager +// method. +func (client *AutonomousDatabaseNationalCharacterSetsClient) NewListByLocationPager(location string, options *AutonomousDatabaseNationalCharacterSetsClientListByLocationOptions) *runtime.Pager[AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse] { + return runtime.NewPager(runtime.PagingHandler[AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse]{ + More: func(page AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse) (AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "AutonomousDatabaseNationalCharacterSetsClient.NewListByLocationPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByLocationCreateRequest(ctx, location, options) + }, nil) + if err != nil { + return AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse{}, err + } + return client.listByLocationHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByLocationCreateRequest creates the ListByLocation request. +func (client *AutonomousDatabaseNationalCharacterSetsClient) listByLocationCreateRequest(ctx context.Context, location string, _ *AutonomousDatabaseNationalCharacterSetsClientListByLocationOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/autonomousDatabaseNationalCharacterSets" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByLocationHandleResponse handles the ListByLocation response. +func (client *AutonomousDatabaseNationalCharacterSetsClient) listByLocationHandleResponse(resp *http.Response) (AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse, error) { + result := AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDatabaseNationalCharacterSetListResult); err != nil { + return AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabases_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabases_client.go new file mode 100644 index 00000000..d1361bdc --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabases_client.go @@ -0,0 +1,927 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// AutonomousDatabasesClient contains the methods for the AutonomousDatabases group. +// Don't use this type directly, use NewAutonomousDatabasesClient() instead. +type AutonomousDatabasesClient struct { + internal *arm.Client + subscriptionID string +} + +// NewAutonomousDatabasesClient creates a new instance of AutonomousDatabasesClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewAutonomousDatabasesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*AutonomousDatabasesClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &AutonomousDatabasesClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginChangeDisasterRecoveryConfiguration - Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - body - The content of the action request +// - options - AutonomousDatabasesClientBeginChangeDisasterRecoveryConfigurationOptions contains the optional parameters for +// the AutonomousDatabasesClient.BeginChangeDisasterRecoveryConfiguration method. +func (client *AutonomousDatabasesClient) BeginChangeDisasterRecoveryConfiguration(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body DisasterRecoveryConfigurationDetails, options *AutonomousDatabasesClientBeginChangeDisasterRecoveryConfigurationOptions) (*runtime.Poller[AutonomousDatabasesClientChangeDisasterRecoveryConfigurationResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.changeDisasterRecoveryConfiguration(ctx, resourceGroupName, autonomousdatabasename, body, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabasesClientChangeDisasterRecoveryConfigurationResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabasesClientChangeDisasterRecoveryConfigurationResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// ChangeDisasterRecoveryConfiguration - Perform ChangeDisasterRecoveryConfiguration action on Autonomous Database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabasesClient) changeDisasterRecoveryConfiguration(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body DisasterRecoveryConfigurationDetails, options *AutonomousDatabasesClientBeginChangeDisasterRecoveryConfigurationOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabasesClient.BeginChangeDisasterRecoveryConfiguration" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.changeDisasterRecoveryConfigurationCreateRequest(ctx, resourceGroupName, autonomousdatabasename, body, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// changeDisasterRecoveryConfigurationCreateRequest creates the ChangeDisasterRecoveryConfiguration request. +func (client *AutonomousDatabasesClient) changeDisasterRecoveryConfigurationCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body DisasterRecoveryConfigurationDetails, _ *AutonomousDatabasesClientBeginChangeDisasterRecoveryConfigurationOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/changeDisasterRecoveryConfiguration" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// BeginCreateOrUpdate - Create a AutonomousDatabase +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - resource - Resource create parameters. +// - options - AutonomousDatabasesClientBeginCreateOrUpdateOptions contains the optional parameters for the AutonomousDatabasesClient.BeginCreateOrUpdate +// method. +func (client *AutonomousDatabasesClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, autonomousdatabasename string, resource AutonomousDatabase, options *AutonomousDatabasesClientBeginCreateOrUpdateOptions) (*runtime.Poller[AutonomousDatabasesClientCreateOrUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.createOrUpdate(ctx, resourceGroupName, autonomousdatabasename, resource, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabasesClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabasesClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// CreateOrUpdate - Create a AutonomousDatabase +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabasesClient) createOrUpdate(ctx context.Context, resourceGroupName string, autonomousdatabasename string, resource AutonomousDatabase, options *AutonomousDatabasesClientBeginCreateOrUpdateOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabasesClient.BeginCreateOrUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, autonomousdatabasename, resource, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// createOrUpdateCreateRequest creates the CreateOrUpdate request. +func (client *AutonomousDatabasesClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, resource AutonomousDatabase, _ *AutonomousDatabasesClientBeginCreateOrUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, resource); err != nil { + return nil, err + } + return req, nil +} + +// BeginDelete - Delete a AutonomousDatabase +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - options - AutonomousDatabasesClientBeginDeleteOptions contains the optional parameters for the AutonomousDatabasesClient.BeginDelete +// method. +func (client *AutonomousDatabasesClient) BeginDelete(ctx context.Context, resourceGroupName string, autonomousdatabasename string, options *AutonomousDatabasesClientBeginDeleteOptions) (*runtime.Poller[AutonomousDatabasesClientDeleteResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.deleteOperation(ctx, resourceGroupName, autonomousdatabasename, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabasesClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabasesClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Delete - Delete a AutonomousDatabase +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabasesClient) deleteOperation(ctx context.Context, resourceGroupName string, autonomousdatabasename string, options *AutonomousDatabasesClientBeginDeleteOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabasesClient.BeginDelete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, resourceGroupName, autonomousdatabasename, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusAccepted, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *AutonomousDatabasesClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, _ *AutonomousDatabasesClientBeginDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// BeginFailover - Perform failover action on Autonomous Database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - body - The content of the action request +// - options - AutonomousDatabasesClientBeginFailoverOptions contains the optional parameters for the AutonomousDatabasesClient.BeginFailover +// method. +func (client *AutonomousDatabasesClient) BeginFailover(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body PeerDbDetails, options *AutonomousDatabasesClientBeginFailoverOptions) (*runtime.Poller[AutonomousDatabasesClientFailoverResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.failover(ctx, resourceGroupName, autonomousdatabasename, body, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabasesClientFailoverResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabasesClientFailoverResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Failover - Perform failover action on Autonomous Database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabasesClient) failover(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body PeerDbDetails, options *AutonomousDatabasesClientBeginFailoverOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabasesClient.BeginFailover" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.failoverCreateRequest(ctx, resourceGroupName, autonomousdatabasename, body, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// failoverCreateRequest creates the Failover request. +func (client *AutonomousDatabasesClient) failoverCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body PeerDbDetails, _ *AutonomousDatabasesClientBeginFailoverOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/failover" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// GenerateWallet - Generate wallet action on Autonomous Database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - body - The content of the action request +// - options - AutonomousDatabasesClientGenerateWalletOptions contains the optional parameters for the AutonomousDatabasesClient.GenerateWallet +// method. +func (client *AutonomousDatabasesClient) GenerateWallet(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body GenerateAutonomousDatabaseWalletDetails, options *AutonomousDatabasesClientGenerateWalletOptions) (AutonomousDatabasesClientGenerateWalletResponse, error) { + var err error + const operationName = "AutonomousDatabasesClient.GenerateWallet" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.generateWalletCreateRequest(ctx, resourceGroupName, autonomousdatabasename, body, options) + if err != nil { + return AutonomousDatabasesClientGenerateWalletResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return AutonomousDatabasesClientGenerateWalletResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return AutonomousDatabasesClientGenerateWalletResponse{}, err + } + resp, err := client.generateWalletHandleResponse(httpResp) + return resp, err +} + +// generateWalletCreateRequest creates the GenerateWallet request. +func (client *AutonomousDatabasesClient) generateWalletCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body GenerateAutonomousDatabaseWalletDetails, _ *AutonomousDatabasesClientGenerateWalletOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/generateWallet" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// generateWalletHandleResponse handles the GenerateWallet response. +func (client *AutonomousDatabasesClient) generateWalletHandleResponse(resp *http.Response) (AutonomousDatabasesClientGenerateWalletResponse, error) { + result := AutonomousDatabasesClientGenerateWalletResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDatabaseWalletFile); err != nil { + return AutonomousDatabasesClientGenerateWalletResponse{}, err + } + return result, nil +} + +// Get - Get a AutonomousDatabase +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - options - AutonomousDatabasesClientGetOptions contains the optional parameters for the AutonomousDatabasesClient.Get method. +func (client *AutonomousDatabasesClient) Get(ctx context.Context, resourceGroupName string, autonomousdatabasename string, options *AutonomousDatabasesClientGetOptions) (AutonomousDatabasesClientGetResponse, error) { + var err error + const operationName = "AutonomousDatabasesClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, autonomousdatabasename, options) + if err != nil { + return AutonomousDatabasesClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return AutonomousDatabasesClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return AutonomousDatabasesClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *AutonomousDatabasesClient) getCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, _ *AutonomousDatabasesClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *AutonomousDatabasesClient) getHandleResponse(resp *http.Response) (AutonomousDatabasesClientGetResponse, error) { + result := AutonomousDatabasesClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDatabase); err != nil { + return AutonomousDatabasesClientGetResponse{}, err + } + return result, nil +} + +// NewListByResourceGroupPager - List AutonomousDatabase resources by resource group +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - options - AutonomousDatabasesClientListByResourceGroupOptions contains the optional parameters for the AutonomousDatabasesClient.NewListByResourceGroupPager +// method. +func (client *AutonomousDatabasesClient) NewListByResourceGroupPager(resourceGroupName string, options *AutonomousDatabasesClientListByResourceGroupOptions) *runtime.Pager[AutonomousDatabasesClientListByResourceGroupResponse] { + return runtime.NewPager(runtime.PagingHandler[AutonomousDatabasesClientListByResourceGroupResponse]{ + More: func(page AutonomousDatabasesClientListByResourceGroupResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *AutonomousDatabasesClientListByResourceGroupResponse) (AutonomousDatabasesClientListByResourceGroupResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "AutonomousDatabasesClient.NewListByResourceGroupPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByResourceGroupCreateRequest(ctx, resourceGroupName, options) + }, nil) + if err != nil { + return AutonomousDatabasesClientListByResourceGroupResponse{}, err + } + return client.listByResourceGroupHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByResourceGroupCreateRequest creates the ListByResourceGroup request. +func (client *AutonomousDatabasesClient) listByResourceGroupCreateRequest(ctx context.Context, resourceGroupName string, _ *AutonomousDatabasesClientListByResourceGroupOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByResourceGroupHandleResponse handles the ListByResourceGroup response. +func (client *AutonomousDatabasesClient) listByResourceGroupHandleResponse(resp *http.Response) (AutonomousDatabasesClientListByResourceGroupResponse, error) { + result := AutonomousDatabasesClientListByResourceGroupResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDatabaseListResult); err != nil { + return AutonomousDatabasesClientListByResourceGroupResponse{}, err + } + return result, nil +} + +// NewListBySubscriptionPager - List AutonomousDatabase resources by subscription ID +// +// Generated from API version 2025-03-01 +// - options - AutonomousDatabasesClientListBySubscriptionOptions contains the optional parameters for the AutonomousDatabasesClient.NewListBySubscriptionPager +// method. +func (client *AutonomousDatabasesClient) NewListBySubscriptionPager(options *AutonomousDatabasesClientListBySubscriptionOptions) *runtime.Pager[AutonomousDatabasesClientListBySubscriptionResponse] { + return runtime.NewPager(runtime.PagingHandler[AutonomousDatabasesClientListBySubscriptionResponse]{ + More: func(page AutonomousDatabasesClientListBySubscriptionResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *AutonomousDatabasesClientListBySubscriptionResponse) (AutonomousDatabasesClientListBySubscriptionResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "AutonomousDatabasesClient.NewListBySubscriptionPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listBySubscriptionCreateRequest(ctx, options) + }, nil) + if err != nil { + return AutonomousDatabasesClientListBySubscriptionResponse{}, err + } + return client.listBySubscriptionHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listBySubscriptionCreateRequest creates the ListBySubscription request. +func (client *AutonomousDatabasesClient) listBySubscriptionCreateRequest(ctx context.Context, _ *AutonomousDatabasesClientListBySubscriptionOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/autonomousDatabases" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listBySubscriptionHandleResponse handles the ListBySubscription response. +func (client *AutonomousDatabasesClient) listBySubscriptionHandleResponse(resp *http.Response) (AutonomousDatabasesClientListBySubscriptionResponse, error) { + result := AutonomousDatabasesClientListBySubscriptionResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDatabaseListResult); err != nil { + return AutonomousDatabasesClientListBySubscriptionResponse{}, err + } + return result, nil +} + +// BeginRestore - Restores an Autonomous Database based on the provided request parameters. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - body - The content of the action request +// - options - AutonomousDatabasesClientBeginRestoreOptions contains the optional parameters for the AutonomousDatabasesClient.BeginRestore +// method. +func (client *AutonomousDatabasesClient) BeginRestore(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body RestoreAutonomousDatabaseDetails, options *AutonomousDatabasesClientBeginRestoreOptions) (*runtime.Poller[AutonomousDatabasesClientRestoreResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.restore(ctx, resourceGroupName, autonomousdatabasename, body, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabasesClientRestoreResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabasesClientRestoreResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Restore - Restores an Autonomous Database based on the provided request parameters. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabasesClient) restore(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body RestoreAutonomousDatabaseDetails, options *AutonomousDatabasesClientBeginRestoreOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabasesClient.BeginRestore" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.restoreCreateRequest(ctx, resourceGroupName, autonomousdatabasename, body, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// restoreCreateRequest creates the Restore request. +func (client *AutonomousDatabasesClient) restoreCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body RestoreAutonomousDatabaseDetails, _ *AutonomousDatabasesClientBeginRestoreOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/restore" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// BeginShrink - This operation shrinks the current allocated storage down to the current actual used data storage. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - options - AutonomousDatabasesClientBeginShrinkOptions contains the optional parameters for the AutonomousDatabasesClient.BeginShrink +// method. +func (client *AutonomousDatabasesClient) BeginShrink(ctx context.Context, resourceGroupName string, autonomousdatabasename string, options *AutonomousDatabasesClientBeginShrinkOptions) (*runtime.Poller[AutonomousDatabasesClientShrinkResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.shrink(ctx, resourceGroupName, autonomousdatabasename, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabasesClientShrinkResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabasesClientShrinkResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Shrink - This operation shrinks the current allocated storage down to the current actual used data storage. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabasesClient) shrink(ctx context.Context, resourceGroupName string, autonomousdatabasename string, options *AutonomousDatabasesClientBeginShrinkOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabasesClient.BeginShrink" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.shrinkCreateRequest(ctx, resourceGroupName, autonomousdatabasename, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// shrinkCreateRequest creates the Shrink request. +func (client *AutonomousDatabasesClient) shrinkCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, _ *AutonomousDatabasesClientBeginShrinkOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/shrink" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// BeginSwitchover - Perform switchover action on Autonomous Database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - body - The content of the action request +// - options - AutonomousDatabasesClientBeginSwitchoverOptions contains the optional parameters for the AutonomousDatabasesClient.BeginSwitchover +// method. +func (client *AutonomousDatabasesClient) BeginSwitchover(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body PeerDbDetails, options *AutonomousDatabasesClientBeginSwitchoverOptions) (*runtime.Poller[AutonomousDatabasesClientSwitchoverResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.switchover(ctx, resourceGroupName, autonomousdatabasename, body, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabasesClientSwitchoverResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabasesClientSwitchoverResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Switchover - Perform switchover action on Autonomous Database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabasesClient) switchover(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body PeerDbDetails, options *AutonomousDatabasesClientBeginSwitchoverOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabasesClient.BeginSwitchover" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.switchoverCreateRequest(ctx, resourceGroupName, autonomousdatabasename, body, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// switchoverCreateRequest creates the Switchover request. +func (client *AutonomousDatabasesClient) switchoverCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, body PeerDbDetails, _ *AutonomousDatabasesClientBeginSwitchoverOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}/switchover" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// BeginUpdate - Update a AutonomousDatabase +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - autonomousdatabasename - The database name. +// - properties - The resource properties to be updated. +// - options - AutonomousDatabasesClientBeginUpdateOptions contains the optional parameters for the AutonomousDatabasesClient.BeginUpdate +// method. +func (client *AutonomousDatabasesClient) BeginUpdate(ctx context.Context, resourceGroupName string, autonomousdatabasename string, properties AutonomousDatabaseUpdate, options *AutonomousDatabasesClientBeginUpdateOptions) (*runtime.Poller[AutonomousDatabasesClientUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.update(ctx, resourceGroupName, autonomousdatabasename, properties, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[AutonomousDatabasesClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[AutonomousDatabasesClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Update - Update a AutonomousDatabase +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *AutonomousDatabasesClient) update(ctx context.Context, resourceGroupName string, autonomousdatabasename string, properties AutonomousDatabaseUpdate, options *AutonomousDatabasesClientBeginUpdateOptions) (*http.Response, error) { + var err error + const operationName = "AutonomousDatabasesClient.BeginUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.updateCreateRequest(ctx, resourceGroupName, autonomousdatabasename, properties, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// updateCreateRequest creates the Update request. +func (client *AutonomousDatabasesClient) updateCreateRequest(ctx context.Context, resourceGroupName string, autonomousdatabasename string, properties AutonomousDatabaseUpdate, _ *AutonomousDatabasesClientBeginUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/autonomousDatabases/{autonomousdatabasename}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if autonomousdatabasename == "" { + return nil, errors.New("parameter autonomousdatabasename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdatabasename}", url.PathEscape(autonomousdatabasename)) + req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, properties); err != nil { + return nil, err + } + return req, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabaseversions_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabaseversions_client.go new file mode 100644 index 00000000..6b677bac --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/autonomousdatabaseversions_client.go @@ -0,0 +1,165 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// AutonomousDatabaseVersionsClient contains the methods for the AutonomousDatabaseVersions group. +// Don't use this type directly, use NewAutonomousDatabaseVersionsClient() instead. +type AutonomousDatabaseVersionsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewAutonomousDatabaseVersionsClient creates a new instance of AutonomousDatabaseVersionsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewAutonomousDatabaseVersionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*AutonomousDatabaseVersionsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &AutonomousDatabaseVersionsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a AutonomousDbVersion +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - autonomousdbversionsname - AutonomousDbVersion name +// - options - AutonomousDatabaseVersionsClientGetOptions contains the optional parameters for the AutonomousDatabaseVersionsClient.Get +// method. +func (client *AutonomousDatabaseVersionsClient) Get(ctx context.Context, location string, autonomousdbversionsname string, options *AutonomousDatabaseVersionsClientGetOptions) (AutonomousDatabaseVersionsClientGetResponse, error) { + var err error + const operationName = "AutonomousDatabaseVersionsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, autonomousdbversionsname, options) + if err != nil { + return AutonomousDatabaseVersionsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return AutonomousDatabaseVersionsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return AutonomousDatabaseVersionsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *AutonomousDatabaseVersionsClient) getCreateRequest(ctx context.Context, location string, autonomousdbversionsname string, _ *AutonomousDatabaseVersionsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/autonomousDbVersions/{autonomousdbversionsname}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if autonomousdbversionsname == "" { + return nil, errors.New("parameter autonomousdbversionsname cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{autonomousdbversionsname}", url.PathEscape(autonomousdbversionsname)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *AutonomousDatabaseVersionsClient) getHandleResponse(resp *http.Response) (AutonomousDatabaseVersionsClientGetResponse, error) { + result := AutonomousDatabaseVersionsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDbVersion); err != nil { + return AutonomousDatabaseVersionsClientGetResponse{}, err + } + return result, nil +} + +// NewListByLocationPager - List AutonomousDbVersion resources by SubscriptionLocationResource +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - options - AutonomousDatabaseVersionsClientListByLocationOptions contains the optional parameters for the AutonomousDatabaseVersionsClient.NewListByLocationPager +// method. +func (client *AutonomousDatabaseVersionsClient) NewListByLocationPager(location string, options *AutonomousDatabaseVersionsClientListByLocationOptions) *runtime.Pager[AutonomousDatabaseVersionsClientListByLocationResponse] { + return runtime.NewPager(runtime.PagingHandler[AutonomousDatabaseVersionsClientListByLocationResponse]{ + More: func(page AutonomousDatabaseVersionsClientListByLocationResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *AutonomousDatabaseVersionsClientListByLocationResponse) (AutonomousDatabaseVersionsClientListByLocationResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "AutonomousDatabaseVersionsClient.NewListByLocationPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByLocationCreateRequest(ctx, location, options) + }, nil) + if err != nil { + return AutonomousDatabaseVersionsClientListByLocationResponse{}, err + } + return client.listByLocationHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByLocationCreateRequest creates the ListByLocation request. +func (client *AutonomousDatabaseVersionsClient) listByLocationCreateRequest(ctx context.Context, location string, _ *AutonomousDatabaseVersionsClientListByLocationOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/autonomousDbVersions" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByLocationHandleResponse handles the ListByLocation response. +func (client *AutonomousDatabaseVersionsClient) listByLocationHandleResponse(resp *http.Response) (AutonomousDatabaseVersionsClientListByLocationResponse, error) { + result := AutonomousDatabaseVersionsClientListByLocationResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AutonomousDbVersionListResult); err != nil { + return AutonomousDatabaseVersionsClientListByLocationResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/ci.yml b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/ci.yml new file mode 100644 index 00000000..ffcc2adc --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/ci.yml @@ -0,0 +1,27 @@ +# NOTE: Please refer to https://aka.ms/azsdk/engsys/ci-yaml before editing this file. +trigger: + branches: + include: + - main + - feature/* + - hotfix/* + - release/* + paths: + include: + - sdk/resourcemanager/oracledatabase/armoracledatabase/ + +pr: + branches: + include: + - main + - feature/* + - hotfix/* + - release/* + paths: + include: + - sdk/resourcemanager/oracledatabase/armoracledatabase/ + +extends: + template: /eng/pipelines/templates/jobs/archetype-sdk-client.yml + parameters: + ServiceDirectory: 'resourcemanager/oracledatabase/armoracledatabase' diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/client_factory.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/client_factory.go new file mode 100644 index 00000000..57afa1a8 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/client_factory.go @@ -0,0 +1,208 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" +) + +// ClientFactory is a client factory used to create any client in this module. +// Don't use this type directly, use NewClientFactory instead. +type ClientFactory struct { + subscriptionID string + internal *arm.Client +} + +// NewClientFactory creates a new instance of ClientFactory with the specified values. +// The parameter values will be propagated to any client created from this factory. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewClientFactory(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ClientFactory, error) { + internal, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + return &ClientFactory{ + subscriptionID: subscriptionID, + internal: internal, + }, nil +} + +// NewAutonomousDatabaseBackupsClient creates a new instance of AutonomousDatabaseBackupsClient. +func (c *ClientFactory) NewAutonomousDatabaseBackupsClient() *AutonomousDatabaseBackupsClient { + return &AutonomousDatabaseBackupsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewAutonomousDatabaseCharacterSetsClient creates a new instance of AutonomousDatabaseCharacterSetsClient. +func (c *ClientFactory) NewAutonomousDatabaseCharacterSetsClient() *AutonomousDatabaseCharacterSetsClient { + return &AutonomousDatabaseCharacterSetsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewAutonomousDatabaseNationalCharacterSetsClient creates a new instance of AutonomousDatabaseNationalCharacterSetsClient. +func (c *ClientFactory) NewAutonomousDatabaseNationalCharacterSetsClient() *AutonomousDatabaseNationalCharacterSetsClient { + return &AutonomousDatabaseNationalCharacterSetsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewAutonomousDatabaseVersionsClient creates a new instance of AutonomousDatabaseVersionsClient. +func (c *ClientFactory) NewAutonomousDatabaseVersionsClient() *AutonomousDatabaseVersionsClient { + return &AutonomousDatabaseVersionsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewAutonomousDatabasesClient creates a new instance of AutonomousDatabasesClient. +func (c *ClientFactory) NewAutonomousDatabasesClient() *AutonomousDatabasesClient { + return &AutonomousDatabasesClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewCloudExadataInfrastructuresClient creates a new instance of CloudExadataInfrastructuresClient. +func (c *ClientFactory) NewCloudExadataInfrastructuresClient() *CloudExadataInfrastructuresClient { + return &CloudExadataInfrastructuresClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewCloudVMClustersClient creates a new instance of CloudVMClustersClient. +func (c *ClientFactory) NewCloudVMClustersClient() *CloudVMClustersClient { + return &CloudVMClustersClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewDNSPrivateViewsClient creates a new instance of DNSPrivateViewsClient. +func (c *ClientFactory) NewDNSPrivateViewsClient() *DNSPrivateViewsClient { + return &DNSPrivateViewsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewDNSPrivateZonesClient creates a new instance of DNSPrivateZonesClient. +func (c *ClientFactory) NewDNSPrivateZonesClient() *DNSPrivateZonesClient { + return &DNSPrivateZonesClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewDbNodesClient creates a new instance of DbNodesClient. +func (c *ClientFactory) NewDbNodesClient() *DbNodesClient { + return &DbNodesClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewDbServersClient creates a new instance of DbServersClient. +func (c *ClientFactory) NewDbServersClient() *DbServersClient { + return &DbServersClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewDbSystemShapesClient creates a new instance of DbSystemShapesClient. +func (c *ClientFactory) NewDbSystemShapesClient() *DbSystemShapesClient { + return &DbSystemShapesClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewExadbVMClustersClient creates a new instance of ExadbVMClustersClient. +func (c *ClientFactory) NewExadbVMClustersClient() *ExadbVMClustersClient { + return &ExadbVMClustersClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewExascaleDbNodesClient creates a new instance of ExascaleDbNodesClient. +func (c *ClientFactory) NewExascaleDbNodesClient() *ExascaleDbNodesClient { + return &ExascaleDbNodesClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewExascaleDbStorageVaultsClient creates a new instance of ExascaleDbStorageVaultsClient. +func (c *ClientFactory) NewExascaleDbStorageVaultsClient() *ExascaleDbStorageVaultsClient { + return &ExascaleDbStorageVaultsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewFlexComponentsClient creates a new instance of FlexComponentsClient. +func (c *ClientFactory) NewFlexComponentsClient() *FlexComponentsClient { + return &FlexComponentsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewGiMinorVersionsClient creates a new instance of GiMinorVersionsClient. +func (c *ClientFactory) NewGiMinorVersionsClient() *GiMinorVersionsClient { + return &GiMinorVersionsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewGiVersionsClient creates a new instance of GiVersionsClient. +func (c *ClientFactory) NewGiVersionsClient() *GiVersionsClient { + return &GiVersionsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewOperationsClient creates a new instance of OperationsClient. +func (c *ClientFactory) NewOperationsClient() *OperationsClient { + return &OperationsClient{ + internal: c.internal, + } +} + +// NewOracleSubscriptionsClient creates a new instance of OracleSubscriptionsClient. +func (c *ClientFactory) NewOracleSubscriptionsClient() *OracleSubscriptionsClient { + return &OracleSubscriptionsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewSystemVersionsClient creates a new instance of SystemVersionsClient. +func (c *ClientFactory) NewSystemVersionsClient() *SystemVersionsClient { + return &SystemVersionsClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} + +// NewVirtualNetworkAddressesClient creates a new instance of VirtualNetworkAddressesClient. +func (c *ClientFactory) NewVirtualNetworkAddressesClient() *VirtualNetworkAddressesClient { + return &VirtualNetworkAddressesClient{ + subscriptionID: c.subscriptionID, + internal: c.internal, + } +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/cloudexadatainfrastructures_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/cloudexadatainfrastructures_client.go new file mode 100644 index 00000000..912fdc0b --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/cloudexadatainfrastructures_client.go @@ -0,0 +1,534 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// CloudExadataInfrastructuresClient contains the methods for the CloudExadataInfrastructures group. +// Don't use this type directly, use NewCloudExadataInfrastructuresClient() instead. +type CloudExadataInfrastructuresClient struct { + internal *arm.Client + subscriptionID string +} + +// NewCloudExadataInfrastructuresClient creates a new instance of CloudExadataInfrastructuresClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewCloudExadataInfrastructuresClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*CloudExadataInfrastructuresClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &CloudExadataInfrastructuresClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginAddStorageCapacity - Perform add storage capacity on exadata infra +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudexadatainfrastructurename - CloudExadataInfrastructure name +// - options - CloudExadataInfrastructuresClientBeginAddStorageCapacityOptions contains the optional parameters for the CloudExadataInfrastructuresClient.BeginAddStorageCapacity +// method. +func (client *CloudExadataInfrastructuresClient) BeginAddStorageCapacity(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, options *CloudExadataInfrastructuresClientBeginAddStorageCapacityOptions) (*runtime.Poller[CloudExadataInfrastructuresClientAddStorageCapacityResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.addStorageCapacity(ctx, resourceGroupName, cloudexadatainfrastructurename, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[CloudExadataInfrastructuresClientAddStorageCapacityResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[CloudExadataInfrastructuresClientAddStorageCapacityResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// AddStorageCapacity - Perform add storage capacity on exadata infra +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *CloudExadataInfrastructuresClient) addStorageCapacity(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, options *CloudExadataInfrastructuresClientBeginAddStorageCapacityOptions) (*http.Response, error) { + var err error + const operationName = "CloudExadataInfrastructuresClient.BeginAddStorageCapacity" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.addStorageCapacityCreateRequest(ctx, resourceGroupName, cloudexadatainfrastructurename, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// addStorageCapacityCreateRequest creates the AddStorageCapacity request. +func (client *CloudExadataInfrastructuresClient) addStorageCapacityCreateRequest(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, _ *CloudExadataInfrastructuresClientBeginAddStorageCapacityOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudExadataInfrastructures/{cloudexadatainfrastructurename}/addStorageCapacity" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudexadatainfrastructurename == "" { + return nil, errors.New("parameter cloudexadatainfrastructurename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudexadatainfrastructurename}", url.PathEscape(cloudexadatainfrastructurename)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// BeginCreateOrUpdate - Create a CloudExadataInfrastructure +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudexadatainfrastructurename - CloudExadataInfrastructure name +// - resource - Resource create parameters. +// - options - CloudExadataInfrastructuresClientBeginCreateOrUpdateOptions contains the optional parameters for the CloudExadataInfrastructuresClient.BeginCreateOrUpdate +// method. +func (client *CloudExadataInfrastructuresClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, resource CloudExadataInfrastructure, options *CloudExadataInfrastructuresClientBeginCreateOrUpdateOptions) (*runtime.Poller[CloudExadataInfrastructuresClientCreateOrUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.createOrUpdate(ctx, resourceGroupName, cloudexadatainfrastructurename, resource, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[CloudExadataInfrastructuresClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[CloudExadataInfrastructuresClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// CreateOrUpdate - Create a CloudExadataInfrastructure +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *CloudExadataInfrastructuresClient) createOrUpdate(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, resource CloudExadataInfrastructure, options *CloudExadataInfrastructuresClientBeginCreateOrUpdateOptions) (*http.Response, error) { + var err error + const operationName = "CloudExadataInfrastructuresClient.BeginCreateOrUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, cloudexadatainfrastructurename, resource, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// createOrUpdateCreateRequest creates the CreateOrUpdate request. +func (client *CloudExadataInfrastructuresClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, resource CloudExadataInfrastructure, _ *CloudExadataInfrastructuresClientBeginCreateOrUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudExadataInfrastructures/{cloudexadatainfrastructurename}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudexadatainfrastructurename == "" { + return nil, errors.New("parameter cloudexadatainfrastructurename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudexadatainfrastructurename}", url.PathEscape(cloudexadatainfrastructurename)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, resource); err != nil { + return nil, err + } + return req, nil +} + +// BeginDelete - Delete a CloudExadataInfrastructure +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudexadatainfrastructurename - CloudExadataInfrastructure name +// - options - CloudExadataInfrastructuresClientBeginDeleteOptions contains the optional parameters for the CloudExadataInfrastructuresClient.BeginDelete +// method. +func (client *CloudExadataInfrastructuresClient) BeginDelete(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, options *CloudExadataInfrastructuresClientBeginDeleteOptions) (*runtime.Poller[CloudExadataInfrastructuresClientDeleteResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.deleteOperation(ctx, resourceGroupName, cloudexadatainfrastructurename, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[CloudExadataInfrastructuresClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[CloudExadataInfrastructuresClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Delete - Delete a CloudExadataInfrastructure +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *CloudExadataInfrastructuresClient) deleteOperation(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, options *CloudExadataInfrastructuresClientBeginDeleteOptions) (*http.Response, error) { + var err error + const operationName = "CloudExadataInfrastructuresClient.BeginDelete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, resourceGroupName, cloudexadatainfrastructurename, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusAccepted, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *CloudExadataInfrastructuresClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, _ *CloudExadataInfrastructuresClientBeginDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudExadataInfrastructures/{cloudexadatainfrastructurename}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudexadatainfrastructurename == "" { + return nil, errors.New("parameter cloudexadatainfrastructurename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudexadatainfrastructurename}", url.PathEscape(cloudexadatainfrastructurename)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// Get - Get a CloudExadataInfrastructure +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudexadatainfrastructurename - CloudExadataInfrastructure name +// - options - CloudExadataInfrastructuresClientGetOptions contains the optional parameters for the CloudExadataInfrastructuresClient.Get +// method. +func (client *CloudExadataInfrastructuresClient) Get(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, options *CloudExadataInfrastructuresClientGetOptions) (CloudExadataInfrastructuresClientGetResponse, error) { + var err error + const operationName = "CloudExadataInfrastructuresClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, cloudexadatainfrastructurename, options) + if err != nil { + return CloudExadataInfrastructuresClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return CloudExadataInfrastructuresClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return CloudExadataInfrastructuresClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *CloudExadataInfrastructuresClient) getCreateRequest(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, _ *CloudExadataInfrastructuresClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudExadataInfrastructures/{cloudexadatainfrastructurename}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudexadatainfrastructurename == "" { + return nil, errors.New("parameter cloudexadatainfrastructurename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudexadatainfrastructurename}", url.PathEscape(cloudexadatainfrastructurename)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *CloudExadataInfrastructuresClient) getHandleResponse(resp *http.Response) (CloudExadataInfrastructuresClientGetResponse, error) { + result := CloudExadataInfrastructuresClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.CloudExadataInfrastructure); err != nil { + return CloudExadataInfrastructuresClientGetResponse{}, err + } + return result, nil +} + +// NewListByResourceGroupPager - List CloudExadataInfrastructure resources by resource group +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - options - CloudExadataInfrastructuresClientListByResourceGroupOptions contains the optional parameters for the CloudExadataInfrastructuresClient.NewListByResourceGroupPager +// method. +func (client *CloudExadataInfrastructuresClient) NewListByResourceGroupPager(resourceGroupName string, options *CloudExadataInfrastructuresClientListByResourceGroupOptions) *runtime.Pager[CloudExadataInfrastructuresClientListByResourceGroupResponse] { + return runtime.NewPager(runtime.PagingHandler[CloudExadataInfrastructuresClientListByResourceGroupResponse]{ + More: func(page CloudExadataInfrastructuresClientListByResourceGroupResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *CloudExadataInfrastructuresClientListByResourceGroupResponse) (CloudExadataInfrastructuresClientListByResourceGroupResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "CloudExadataInfrastructuresClient.NewListByResourceGroupPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByResourceGroupCreateRequest(ctx, resourceGroupName, options) + }, nil) + if err != nil { + return CloudExadataInfrastructuresClientListByResourceGroupResponse{}, err + } + return client.listByResourceGroupHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByResourceGroupCreateRequest creates the ListByResourceGroup request. +func (client *CloudExadataInfrastructuresClient) listByResourceGroupCreateRequest(ctx context.Context, resourceGroupName string, _ *CloudExadataInfrastructuresClientListByResourceGroupOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudExadataInfrastructures" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByResourceGroupHandleResponse handles the ListByResourceGroup response. +func (client *CloudExadataInfrastructuresClient) listByResourceGroupHandleResponse(resp *http.Response) (CloudExadataInfrastructuresClientListByResourceGroupResponse, error) { + result := CloudExadataInfrastructuresClientListByResourceGroupResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.CloudExadataInfrastructureListResult); err != nil { + return CloudExadataInfrastructuresClientListByResourceGroupResponse{}, err + } + return result, nil +} + +// NewListBySubscriptionPager - List CloudExadataInfrastructure resources by subscription ID +// +// Generated from API version 2025-03-01 +// - options - CloudExadataInfrastructuresClientListBySubscriptionOptions contains the optional parameters for the CloudExadataInfrastructuresClient.NewListBySubscriptionPager +// method. +func (client *CloudExadataInfrastructuresClient) NewListBySubscriptionPager(options *CloudExadataInfrastructuresClientListBySubscriptionOptions) *runtime.Pager[CloudExadataInfrastructuresClientListBySubscriptionResponse] { + return runtime.NewPager(runtime.PagingHandler[CloudExadataInfrastructuresClientListBySubscriptionResponse]{ + More: func(page CloudExadataInfrastructuresClientListBySubscriptionResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *CloudExadataInfrastructuresClientListBySubscriptionResponse) (CloudExadataInfrastructuresClientListBySubscriptionResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "CloudExadataInfrastructuresClient.NewListBySubscriptionPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listBySubscriptionCreateRequest(ctx, options) + }, nil) + if err != nil { + return CloudExadataInfrastructuresClientListBySubscriptionResponse{}, err + } + return client.listBySubscriptionHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listBySubscriptionCreateRequest creates the ListBySubscription request. +func (client *CloudExadataInfrastructuresClient) listBySubscriptionCreateRequest(ctx context.Context, _ *CloudExadataInfrastructuresClientListBySubscriptionOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/cloudExadataInfrastructures" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listBySubscriptionHandleResponse handles the ListBySubscription response. +func (client *CloudExadataInfrastructuresClient) listBySubscriptionHandleResponse(resp *http.Response) (CloudExadataInfrastructuresClientListBySubscriptionResponse, error) { + result := CloudExadataInfrastructuresClientListBySubscriptionResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.CloudExadataInfrastructureListResult); err != nil { + return CloudExadataInfrastructuresClientListBySubscriptionResponse{}, err + } + return result, nil +} + +// BeginUpdate - Update a CloudExadataInfrastructure +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudexadatainfrastructurename - CloudExadataInfrastructure name +// - properties - The resource properties to be updated. +// - options - CloudExadataInfrastructuresClientBeginUpdateOptions contains the optional parameters for the CloudExadataInfrastructuresClient.BeginUpdate +// method. +func (client *CloudExadataInfrastructuresClient) BeginUpdate(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, properties CloudExadataInfrastructureUpdate, options *CloudExadataInfrastructuresClientBeginUpdateOptions) (*runtime.Poller[CloudExadataInfrastructuresClientUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.update(ctx, resourceGroupName, cloudexadatainfrastructurename, properties, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[CloudExadataInfrastructuresClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[CloudExadataInfrastructuresClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Update - Update a CloudExadataInfrastructure +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *CloudExadataInfrastructuresClient) update(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, properties CloudExadataInfrastructureUpdate, options *CloudExadataInfrastructuresClientBeginUpdateOptions) (*http.Response, error) { + var err error + const operationName = "CloudExadataInfrastructuresClient.BeginUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.updateCreateRequest(ctx, resourceGroupName, cloudexadatainfrastructurename, properties, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// updateCreateRequest creates the Update request. +func (client *CloudExadataInfrastructuresClient) updateCreateRequest(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, properties CloudExadataInfrastructureUpdate, _ *CloudExadataInfrastructuresClientBeginUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudExadataInfrastructures/{cloudexadatainfrastructurename}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudexadatainfrastructurename == "" { + return nil, errors.New("parameter cloudexadatainfrastructurename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudexadatainfrastructurename}", url.PathEscape(cloudexadatainfrastructurename)) + req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, properties); err != nil { + return nil, err + } + return req, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/cloudvmclusters_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/cloudvmclusters_client.go new file mode 100644 index 00000000..7b562033 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/cloudvmclusters_client.go @@ -0,0 +1,689 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// CloudVMClustersClient contains the methods for the CloudVMClusters group. +// Don't use this type directly, use NewCloudVMClustersClient() instead. +type CloudVMClustersClient struct { + internal *arm.Client + subscriptionID string +} + +// NewCloudVMClustersClient creates a new instance of CloudVMClustersClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewCloudVMClustersClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*CloudVMClustersClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &CloudVMClustersClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginAddVMs - Add VMs to the VM Cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - body - The content of the action request +// - options - CloudVMClustersClientBeginAddVMsOptions contains the optional parameters for the CloudVMClustersClient.BeginAddVMs +// method. +func (client *CloudVMClustersClient) BeginAddVMs(ctx context.Context, resourceGroupName string, cloudvmclustername string, body AddRemoveDbNode, options *CloudVMClustersClientBeginAddVMsOptions) (*runtime.Poller[CloudVMClustersClientAddVMsResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.addVMs(ctx, resourceGroupName, cloudvmclustername, body, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[CloudVMClustersClientAddVMsResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[CloudVMClustersClientAddVMsResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// AddVMs - Add VMs to the VM Cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *CloudVMClustersClient) addVMs(ctx context.Context, resourceGroupName string, cloudvmclustername string, body AddRemoveDbNode, options *CloudVMClustersClientBeginAddVMsOptions) (*http.Response, error) { + var err error + const operationName = "CloudVMClustersClient.BeginAddVMs" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.addVMsCreateRequest(ctx, resourceGroupName, cloudvmclustername, body, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// addVMsCreateRequest creates the AddVMs request. +func (client *CloudVMClustersClient) addVMsCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, body AddRemoveDbNode, _ *CloudVMClustersClientBeginAddVMsOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/addVms" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// BeginCreateOrUpdate - Create a CloudVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - resource - Resource create parameters. +// - options - CloudVMClustersClientBeginCreateOrUpdateOptions contains the optional parameters for the CloudVMClustersClient.BeginCreateOrUpdate +// method. +func (client *CloudVMClustersClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, cloudvmclustername string, resource CloudVMCluster, options *CloudVMClustersClientBeginCreateOrUpdateOptions) (*runtime.Poller[CloudVMClustersClientCreateOrUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.createOrUpdate(ctx, resourceGroupName, cloudvmclustername, resource, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[CloudVMClustersClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[CloudVMClustersClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// CreateOrUpdate - Create a CloudVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *CloudVMClustersClient) createOrUpdate(ctx context.Context, resourceGroupName string, cloudvmclustername string, resource CloudVMCluster, options *CloudVMClustersClientBeginCreateOrUpdateOptions) (*http.Response, error) { + var err error + const operationName = "CloudVMClustersClient.BeginCreateOrUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, cloudvmclustername, resource, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// createOrUpdateCreateRequest creates the CreateOrUpdate request. +func (client *CloudVMClustersClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, resource CloudVMCluster, _ *CloudVMClustersClientBeginCreateOrUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, resource); err != nil { + return nil, err + } + return req, nil +} + +// BeginDelete - Delete a CloudVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - options - CloudVMClustersClientBeginDeleteOptions contains the optional parameters for the CloudVMClustersClient.BeginDelete +// method. +func (client *CloudVMClustersClient) BeginDelete(ctx context.Context, resourceGroupName string, cloudvmclustername string, options *CloudVMClustersClientBeginDeleteOptions) (*runtime.Poller[CloudVMClustersClientDeleteResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.deleteOperation(ctx, resourceGroupName, cloudvmclustername, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[CloudVMClustersClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[CloudVMClustersClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Delete - Delete a CloudVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *CloudVMClustersClient) deleteOperation(ctx context.Context, resourceGroupName string, cloudvmclustername string, options *CloudVMClustersClientBeginDeleteOptions) (*http.Response, error) { + var err error + const operationName = "CloudVMClustersClient.BeginDelete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, resourceGroupName, cloudvmclustername, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusAccepted, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *CloudVMClustersClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, _ *CloudVMClustersClientBeginDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// Get - Get a CloudVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - options - CloudVMClustersClientGetOptions contains the optional parameters for the CloudVMClustersClient.Get method. +func (client *CloudVMClustersClient) Get(ctx context.Context, resourceGroupName string, cloudvmclustername string, options *CloudVMClustersClientGetOptions) (CloudVMClustersClientGetResponse, error) { + var err error + const operationName = "CloudVMClustersClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, cloudvmclustername, options) + if err != nil { + return CloudVMClustersClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return CloudVMClustersClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return CloudVMClustersClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *CloudVMClustersClient) getCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, _ *CloudVMClustersClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *CloudVMClustersClient) getHandleResponse(resp *http.Response) (CloudVMClustersClientGetResponse, error) { + result := CloudVMClustersClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.CloudVMCluster); err != nil { + return CloudVMClustersClientGetResponse{}, err + } + return result, nil +} + +// NewListByResourceGroupPager - List CloudVmCluster resources by resource group +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - options - CloudVMClustersClientListByResourceGroupOptions contains the optional parameters for the CloudVMClustersClient.NewListByResourceGroupPager +// method. +func (client *CloudVMClustersClient) NewListByResourceGroupPager(resourceGroupName string, options *CloudVMClustersClientListByResourceGroupOptions) *runtime.Pager[CloudVMClustersClientListByResourceGroupResponse] { + return runtime.NewPager(runtime.PagingHandler[CloudVMClustersClientListByResourceGroupResponse]{ + More: func(page CloudVMClustersClientListByResourceGroupResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *CloudVMClustersClientListByResourceGroupResponse) (CloudVMClustersClientListByResourceGroupResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "CloudVMClustersClient.NewListByResourceGroupPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByResourceGroupCreateRequest(ctx, resourceGroupName, options) + }, nil) + if err != nil { + return CloudVMClustersClientListByResourceGroupResponse{}, err + } + return client.listByResourceGroupHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByResourceGroupCreateRequest creates the ListByResourceGroup request. +func (client *CloudVMClustersClient) listByResourceGroupCreateRequest(ctx context.Context, resourceGroupName string, _ *CloudVMClustersClientListByResourceGroupOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByResourceGroupHandleResponse handles the ListByResourceGroup response. +func (client *CloudVMClustersClient) listByResourceGroupHandleResponse(resp *http.Response) (CloudVMClustersClientListByResourceGroupResponse, error) { + result := CloudVMClustersClientListByResourceGroupResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.CloudVMClusterListResult); err != nil { + return CloudVMClustersClientListByResourceGroupResponse{}, err + } + return result, nil +} + +// NewListBySubscriptionPager - List CloudVmCluster resources by subscription ID +// +// Generated from API version 2025-03-01 +// - options - CloudVMClustersClientListBySubscriptionOptions contains the optional parameters for the CloudVMClustersClient.NewListBySubscriptionPager +// method. +func (client *CloudVMClustersClient) NewListBySubscriptionPager(options *CloudVMClustersClientListBySubscriptionOptions) *runtime.Pager[CloudVMClustersClientListBySubscriptionResponse] { + return runtime.NewPager(runtime.PagingHandler[CloudVMClustersClientListBySubscriptionResponse]{ + More: func(page CloudVMClustersClientListBySubscriptionResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *CloudVMClustersClientListBySubscriptionResponse) (CloudVMClustersClientListBySubscriptionResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "CloudVMClustersClient.NewListBySubscriptionPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listBySubscriptionCreateRequest(ctx, options) + }, nil) + if err != nil { + return CloudVMClustersClientListBySubscriptionResponse{}, err + } + return client.listBySubscriptionHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listBySubscriptionCreateRequest creates the ListBySubscription request. +func (client *CloudVMClustersClient) listBySubscriptionCreateRequest(ctx context.Context, _ *CloudVMClustersClientListBySubscriptionOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/cloudVmClusters" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listBySubscriptionHandleResponse handles the ListBySubscription response. +func (client *CloudVMClustersClient) listBySubscriptionHandleResponse(resp *http.Response) (CloudVMClustersClientListBySubscriptionResponse, error) { + result := CloudVMClustersClientListBySubscriptionResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.CloudVMClusterListResult); err != nil { + return CloudVMClustersClientListBySubscriptionResponse{}, err + } + return result, nil +} + +// ListPrivateIPAddresses - List Private IP Addresses by the provided filter +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - body - The content of the action request +// - options - CloudVMClustersClientListPrivateIPAddressesOptions contains the optional parameters for the CloudVMClustersClient.ListPrivateIPAddresses +// method. +func (client *CloudVMClustersClient) ListPrivateIPAddresses(ctx context.Context, resourceGroupName string, cloudvmclustername string, body PrivateIPAddressesFilter, options *CloudVMClustersClientListPrivateIPAddressesOptions) (CloudVMClustersClientListPrivateIPAddressesResponse, error) { + var err error + const operationName = "CloudVMClustersClient.ListPrivateIPAddresses" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.listPrivateIPAddressesCreateRequest(ctx, resourceGroupName, cloudvmclustername, body, options) + if err != nil { + return CloudVMClustersClientListPrivateIPAddressesResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return CloudVMClustersClientListPrivateIPAddressesResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return CloudVMClustersClientListPrivateIPAddressesResponse{}, err + } + resp, err := client.listPrivateIPAddressesHandleResponse(httpResp) + return resp, err +} + +// listPrivateIPAddressesCreateRequest creates the ListPrivateIPAddresses request. +func (client *CloudVMClustersClient) listPrivateIPAddressesCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, body PrivateIPAddressesFilter, _ *CloudVMClustersClientListPrivateIPAddressesOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/listPrivateIpAddresses" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// listPrivateIPAddressesHandleResponse handles the ListPrivateIPAddresses response. +func (client *CloudVMClustersClient) listPrivateIPAddressesHandleResponse(resp *http.Response) (CloudVMClustersClientListPrivateIPAddressesResponse, error) { + result := CloudVMClustersClientListPrivateIPAddressesResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.PrivateIPAddressPropertiesArray); err != nil { + return CloudVMClustersClientListPrivateIPAddressesResponse{}, err + } + return result, nil +} + +// BeginRemoveVMs - Remove VMs from the VM Cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - body - The content of the action request +// - options - CloudVMClustersClientBeginRemoveVMsOptions contains the optional parameters for the CloudVMClustersClient.BeginRemoveVMs +// method. +func (client *CloudVMClustersClient) BeginRemoveVMs(ctx context.Context, resourceGroupName string, cloudvmclustername string, body AddRemoveDbNode, options *CloudVMClustersClientBeginRemoveVMsOptions) (*runtime.Poller[CloudVMClustersClientRemoveVMsResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.removeVMs(ctx, resourceGroupName, cloudvmclustername, body, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[CloudVMClustersClientRemoveVMsResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[CloudVMClustersClientRemoveVMsResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// RemoveVMs - Remove VMs from the VM Cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *CloudVMClustersClient) removeVMs(ctx context.Context, resourceGroupName string, cloudvmclustername string, body AddRemoveDbNode, options *CloudVMClustersClientBeginRemoveVMsOptions) (*http.Response, error) { + var err error + const operationName = "CloudVMClustersClient.BeginRemoveVMs" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.removeVMsCreateRequest(ctx, resourceGroupName, cloudvmclustername, body, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// removeVMsCreateRequest creates the RemoveVMs request. +func (client *CloudVMClustersClient) removeVMsCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, body AddRemoveDbNode, _ *CloudVMClustersClientBeginRemoveVMsOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/removeVms" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// BeginUpdate - Update a CloudVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - properties - The resource properties to be updated. +// - options - CloudVMClustersClientBeginUpdateOptions contains the optional parameters for the CloudVMClustersClient.BeginUpdate +// method. +func (client *CloudVMClustersClient) BeginUpdate(ctx context.Context, resourceGroupName string, cloudvmclustername string, properties CloudVMClusterUpdate, options *CloudVMClustersClientBeginUpdateOptions) (*runtime.Poller[CloudVMClustersClientUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.update(ctx, resourceGroupName, cloudvmclustername, properties, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[CloudVMClustersClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[CloudVMClustersClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Update - Update a CloudVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *CloudVMClustersClient) update(ctx context.Context, resourceGroupName string, cloudvmclustername string, properties CloudVMClusterUpdate, options *CloudVMClustersClientBeginUpdateOptions) (*http.Response, error) { + var err error + const operationName = "CloudVMClustersClient.BeginUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.updateCreateRequest(ctx, resourceGroupName, cloudvmclustername, properties, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// updateCreateRequest creates the Update request. +func (client *CloudVMClustersClient) updateCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, properties CloudVMClusterUpdate, _ *CloudVMClustersClientBeginUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, properties); err != nil { + return nil, err + } + return req, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/constants.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/constants.go new file mode 100644 index 00000000..49ae3420 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/constants.go @@ -0,0 +1,1449 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +const ( + moduleName = "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase" + moduleVersion = "v1.1.0" +) + +// ActionType - Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. +type ActionType string + +const ( + // ActionTypeInternal - Actions are for internal-only APIs. + ActionTypeInternal ActionType = "Internal" +) + +// PossibleActionTypeValues returns the possible values for the ActionType const type. +func PossibleActionTypeValues() []ActionType { + return []ActionType{ + ActionTypeInternal, + } +} + +// AddSubscriptionOperationState - Add Subscription Operation state enum +type AddSubscriptionOperationState string + +const ( + // AddSubscriptionOperationStateFailed - Failed - State when Add Subscription operation failed + AddSubscriptionOperationStateFailed AddSubscriptionOperationState = "Failed" + // AddSubscriptionOperationStateSucceeded - Succeeded - State when Add Subscription operation succeeded + AddSubscriptionOperationStateSucceeded AddSubscriptionOperationState = "Succeeded" + // AddSubscriptionOperationStateUpdating - Updating - State when Add Subscription operation is being Updated + AddSubscriptionOperationStateUpdating AddSubscriptionOperationState = "Updating" +) + +// PossibleAddSubscriptionOperationStateValues returns the possible values for the AddSubscriptionOperationState const type. +func PossibleAddSubscriptionOperationStateValues() []AddSubscriptionOperationState { + return []AddSubscriptionOperationState{ + AddSubscriptionOperationStateFailed, + AddSubscriptionOperationStateSucceeded, + AddSubscriptionOperationStateUpdating, + } +} + +// AutonomousDatabaseBackupLifecycleState - Autonomous database backup lifecycle state enum +type AutonomousDatabaseBackupLifecycleState string + +const ( + // AutonomousDatabaseBackupLifecycleStateActive - AutonomousDatabase backup is active + AutonomousDatabaseBackupLifecycleStateActive AutonomousDatabaseBackupLifecycleState = "Active" + // AutonomousDatabaseBackupLifecycleStateCreating - AutonomousDatabase backup is creating + AutonomousDatabaseBackupLifecycleStateCreating AutonomousDatabaseBackupLifecycleState = "Creating" + // AutonomousDatabaseBackupLifecycleStateDeleting - AutonomousDatabase backup is deleting + AutonomousDatabaseBackupLifecycleStateDeleting AutonomousDatabaseBackupLifecycleState = "Deleting" + // AutonomousDatabaseBackupLifecycleStateFailed - AutonomousDatabase backup is failed + AutonomousDatabaseBackupLifecycleStateFailed AutonomousDatabaseBackupLifecycleState = "Failed" + // AutonomousDatabaseBackupLifecycleStateUpdating - AutonomousDatabase backup is updating + AutonomousDatabaseBackupLifecycleStateUpdating AutonomousDatabaseBackupLifecycleState = "Updating" +) + +// PossibleAutonomousDatabaseBackupLifecycleStateValues returns the possible values for the AutonomousDatabaseBackupLifecycleState const type. +func PossibleAutonomousDatabaseBackupLifecycleStateValues() []AutonomousDatabaseBackupLifecycleState { + return []AutonomousDatabaseBackupLifecycleState{ + AutonomousDatabaseBackupLifecycleStateActive, + AutonomousDatabaseBackupLifecycleStateCreating, + AutonomousDatabaseBackupLifecycleStateDeleting, + AutonomousDatabaseBackupLifecycleStateFailed, + AutonomousDatabaseBackupLifecycleStateUpdating, + } +} + +// AutonomousDatabaseBackupType - Autonomous database backup type enum +type AutonomousDatabaseBackupType string + +const ( + // AutonomousDatabaseBackupTypeFull - Full backup + AutonomousDatabaseBackupTypeFull AutonomousDatabaseBackupType = "Full" + // AutonomousDatabaseBackupTypeIncremental - Incremental backup + AutonomousDatabaseBackupTypeIncremental AutonomousDatabaseBackupType = "Incremental" + // AutonomousDatabaseBackupTypeLongTerm - LongTerm backup + AutonomousDatabaseBackupTypeLongTerm AutonomousDatabaseBackupType = "LongTerm" +) + +// PossibleAutonomousDatabaseBackupTypeValues returns the possible values for the AutonomousDatabaseBackupType const type. +func PossibleAutonomousDatabaseBackupTypeValues() []AutonomousDatabaseBackupType { + return []AutonomousDatabaseBackupType{ + AutonomousDatabaseBackupTypeFull, + AutonomousDatabaseBackupTypeIncremental, + AutonomousDatabaseBackupTypeLongTerm, + } +} + +// AutonomousDatabaseLifecycleState - Autonomous database lifecycle state enum +type AutonomousDatabaseLifecycleState string + +const ( + // AutonomousDatabaseLifecycleStateAvailable - Indicates that resource in Available state + AutonomousDatabaseLifecycleStateAvailable AutonomousDatabaseLifecycleState = "Available" + // AutonomousDatabaseLifecycleStateAvailableNeedsAttention - Indicates that resource is available but needs attention + AutonomousDatabaseLifecycleStateAvailableNeedsAttention AutonomousDatabaseLifecycleState = "AvailableNeedsAttention" + // AutonomousDatabaseLifecycleStateBackupInProgress - Indicates that resource in BackupInProgress state + AutonomousDatabaseLifecycleStateBackupInProgress AutonomousDatabaseLifecycleState = "BackupInProgress" + // AutonomousDatabaseLifecycleStateInaccessible - IIndicates that resource in Inaccessible state + AutonomousDatabaseLifecycleStateInaccessible AutonomousDatabaseLifecycleState = "Inaccessible" + // AutonomousDatabaseLifecycleStateMaintenanceInProgress - Indicates that resource maintenance in progress state + AutonomousDatabaseLifecycleStateMaintenanceInProgress AutonomousDatabaseLifecycleState = "MaintenanceInProgress" + // AutonomousDatabaseLifecycleStateProvisioning - Indicates that resource in Provisioning state + AutonomousDatabaseLifecycleStateProvisioning AutonomousDatabaseLifecycleState = "Provisioning" + // AutonomousDatabaseLifecycleStateRecreating - Indicates that resource in Recreating state + AutonomousDatabaseLifecycleStateRecreating AutonomousDatabaseLifecycleState = "Recreating" + // AutonomousDatabaseLifecycleStateRestarting - Indicates that resource in Restarting state + AutonomousDatabaseLifecycleStateRestarting AutonomousDatabaseLifecycleState = "Restarting" + // AutonomousDatabaseLifecycleStateRestoreFailed - Indicates that resource in RestoreFailed state + AutonomousDatabaseLifecycleStateRestoreFailed AutonomousDatabaseLifecycleState = "RestoreFailed" + // AutonomousDatabaseLifecycleStateRestoreInProgress - Indicates that resource in RestoreInProgress state + AutonomousDatabaseLifecycleStateRestoreInProgress AutonomousDatabaseLifecycleState = "RestoreInProgress" + // AutonomousDatabaseLifecycleStateRoleChangeInProgress - Indicates that resource role change in progress state + AutonomousDatabaseLifecycleStateRoleChangeInProgress AutonomousDatabaseLifecycleState = "RoleChangeInProgress" + // AutonomousDatabaseLifecycleStateScaleInProgress - Indicates that resource in ScaleInProgress state + AutonomousDatabaseLifecycleStateScaleInProgress AutonomousDatabaseLifecycleState = "ScaleInProgress" + // AutonomousDatabaseLifecycleStateStandby - Indicates that resource in Standby state + AutonomousDatabaseLifecycleStateStandby AutonomousDatabaseLifecycleState = "Standby" + // AutonomousDatabaseLifecycleStateStarting - Indicates that resource in Starting state + AutonomousDatabaseLifecycleStateStarting AutonomousDatabaseLifecycleState = "Starting" + // AutonomousDatabaseLifecycleStateStopped - Indicates that resource in Stopped state + AutonomousDatabaseLifecycleStateStopped AutonomousDatabaseLifecycleState = "Stopped" + // AutonomousDatabaseLifecycleStateStopping - Indicates that resource in Stopping state + AutonomousDatabaseLifecycleStateStopping AutonomousDatabaseLifecycleState = "Stopping" + // AutonomousDatabaseLifecycleStateTerminated - Indicates that resource in Terminated state + AutonomousDatabaseLifecycleStateTerminated AutonomousDatabaseLifecycleState = "Terminated" + // AutonomousDatabaseLifecycleStateTerminating - Indicates that resource in Terminating state + AutonomousDatabaseLifecycleStateTerminating AutonomousDatabaseLifecycleState = "Terminating" + // AutonomousDatabaseLifecycleStateUnavailable - Indicates that resource in Unavailable state + AutonomousDatabaseLifecycleStateUnavailable AutonomousDatabaseLifecycleState = "Unavailable" + // AutonomousDatabaseLifecycleStateUpdating - Indicates that resource in Updating state + AutonomousDatabaseLifecycleStateUpdating AutonomousDatabaseLifecycleState = "Updating" + // AutonomousDatabaseLifecycleStateUpgrading - Indicates that resource in Upgrading state + AutonomousDatabaseLifecycleStateUpgrading AutonomousDatabaseLifecycleState = "Upgrading" +) + +// PossibleAutonomousDatabaseLifecycleStateValues returns the possible values for the AutonomousDatabaseLifecycleState const type. +func PossibleAutonomousDatabaseLifecycleStateValues() []AutonomousDatabaseLifecycleState { + return []AutonomousDatabaseLifecycleState{ + AutonomousDatabaseLifecycleStateAvailable, + AutonomousDatabaseLifecycleStateAvailableNeedsAttention, + AutonomousDatabaseLifecycleStateBackupInProgress, + AutonomousDatabaseLifecycleStateInaccessible, + AutonomousDatabaseLifecycleStateMaintenanceInProgress, + AutonomousDatabaseLifecycleStateProvisioning, + AutonomousDatabaseLifecycleStateRecreating, + AutonomousDatabaseLifecycleStateRestarting, + AutonomousDatabaseLifecycleStateRestoreFailed, + AutonomousDatabaseLifecycleStateRestoreInProgress, + AutonomousDatabaseLifecycleStateRoleChangeInProgress, + AutonomousDatabaseLifecycleStateScaleInProgress, + AutonomousDatabaseLifecycleStateStandby, + AutonomousDatabaseLifecycleStateStarting, + AutonomousDatabaseLifecycleStateStopped, + AutonomousDatabaseLifecycleStateStopping, + AutonomousDatabaseLifecycleStateTerminated, + AutonomousDatabaseLifecycleStateTerminating, + AutonomousDatabaseLifecycleStateUnavailable, + AutonomousDatabaseLifecycleStateUpdating, + AutonomousDatabaseLifecycleStateUpgrading, + } +} + +// AutonomousMaintenanceScheduleType - Autonomous database maintenance schedule type enum. +type AutonomousMaintenanceScheduleType string + +const ( + // AutonomousMaintenanceScheduleTypeEarly - Early maintenance schedule + AutonomousMaintenanceScheduleTypeEarly AutonomousMaintenanceScheduleType = "Early" + // AutonomousMaintenanceScheduleTypeRegular - Regular maintenance schedule + AutonomousMaintenanceScheduleTypeRegular AutonomousMaintenanceScheduleType = "Regular" +) + +// PossibleAutonomousMaintenanceScheduleTypeValues returns the possible values for the AutonomousMaintenanceScheduleType const type. +func PossibleAutonomousMaintenanceScheduleTypeValues() []AutonomousMaintenanceScheduleType { + return []AutonomousMaintenanceScheduleType{ + AutonomousMaintenanceScheduleTypeEarly, + AutonomousMaintenanceScheduleTypeRegular, + } +} + +// AzureResourceProvisioningState - Azure Resource Provisioning State enum +type AzureResourceProvisioningState string + +const ( + // AzureResourceProvisioningStateCanceled - Resource creation was canceled. + AzureResourceProvisioningStateCanceled AzureResourceProvisioningState = "Canceled" + // AzureResourceProvisioningStateFailed - Resource creation failed. + AzureResourceProvisioningStateFailed AzureResourceProvisioningState = "Failed" + // AzureResourceProvisioningStateProvisioning - Indicates that resource in Provisioning state + AzureResourceProvisioningStateProvisioning AzureResourceProvisioningState = "Provisioning" + // AzureResourceProvisioningStateSucceeded - Resource has been created. + AzureResourceProvisioningStateSucceeded AzureResourceProvisioningState = "Succeeded" +) + +// PossibleAzureResourceProvisioningStateValues returns the possible values for the AzureResourceProvisioningState const type. +func PossibleAzureResourceProvisioningStateValues() []AzureResourceProvisioningState { + return []AzureResourceProvisioningState{ + AzureResourceProvisioningStateCanceled, + AzureResourceProvisioningStateFailed, + AzureResourceProvisioningStateProvisioning, + AzureResourceProvisioningStateSucceeded, + } +} + +// CloneType - Clone type enum +type CloneType string + +const ( + // CloneTypeFull - Full clone + CloneTypeFull CloneType = "Full" + // CloneTypeMetadata - Metadata only + CloneTypeMetadata CloneType = "Metadata" +) + +// PossibleCloneTypeValues returns the possible values for the CloneType const type. +func PossibleCloneTypeValues() []CloneType { + return []CloneType{ + CloneTypeFull, + CloneTypeMetadata, + } +} + +// CloudAccountProvisioningState - CloudAccountProvisioningState enum +type CloudAccountProvisioningState string + +const ( + // CloudAccountProvisioningStateAvailable - Available - State when Oracle cloud account cloud linking is complete and it is + // available + CloudAccountProvisioningStateAvailable CloudAccountProvisioningState = "Available" + // CloudAccountProvisioningStatePending - Pending - Initial state when Oracle cloud account is not configured + CloudAccountProvisioningStatePending CloudAccountProvisioningState = "Pending" + // CloudAccountProvisioningStateProvisioning - Provisioning - State when Oracle cloud account is being provisioned + CloudAccountProvisioningStateProvisioning CloudAccountProvisioningState = "Provisioning" +) + +// PossibleCloudAccountProvisioningStateValues returns the possible values for the CloudAccountProvisioningState const type. +func PossibleCloudAccountProvisioningStateValues() []CloudAccountProvisioningState { + return []CloudAccountProvisioningState{ + CloudAccountProvisioningStateAvailable, + CloudAccountProvisioningStatePending, + CloudAccountProvisioningStateProvisioning, + } +} + +// CloudExadataInfrastructureLifecycleState - CloudExadataInfrastructureLifecycleState enum +type CloudExadataInfrastructureLifecycleState string + +const ( + // CloudExadataInfrastructureLifecycleStateAvailable - Indicates that resource in Available state + CloudExadataInfrastructureLifecycleStateAvailable CloudExadataInfrastructureLifecycleState = "Available" + // CloudExadataInfrastructureLifecycleStateFailed - Indicates that resource in Failed state + CloudExadataInfrastructureLifecycleStateFailed CloudExadataInfrastructureLifecycleState = "Failed" + // CloudExadataInfrastructureLifecycleStateMaintenanceInProgress - Indicates that resource maintenance in progress state + CloudExadataInfrastructureLifecycleStateMaintenanceInProgress CloudExadataInfrastructureLifecycleState = "MaintenanceInProgress" + // CloudExadataInfrastructureLifecycleStateProvisioning - Indicates that resource in Provisioning state + CloudExadataInfrastructureLifecycleStateProvisioning CloudExadataInfrastructureLifecycleState = "Provisioning" + // CloudExadataInfrastructureLifecycleStateTerminated - Indicates that resource in Terminated state + CloudExadataInfrastructureLifecycleStateTerminated CloudExadataInfrastructureLifecycleState = "Terminated" + // CloudExadataInfrastructureLifecycleStateTerminating - Indicates that resource in Terminating state + CloudExadataInfrastructureLifecycleStateTerminating CloudExadataInfrastructureLifecycleState = "Terminating" + // CloudExadataInfrastructureLifecycleStateUpdating - Indicates that resource in Updating state + CloudExadataInfrastructureLifecycleStateUpdating CloudExadataInfrastructureLifecycleState = "Updating" +) + +// PossibleCloudExadataInfrastructureLifecycleStateValues returns the possible values for the CloudExadataInfrastructureLifecycleState const type. +func PossibleCloudExadataInfrastructureLifecycleStateValues() []CloudExadataInfrastructureLifecycleState { + return []CloudExadataInfrastructureLifecycleState{ + CloudExadataInfrastructureLifecycleStateAvailable, + CloudExadataInfrastructureLifecycleStateFailed, + CloudExadataInfrastructureLifecycleStateMaintenanceInProgress, + CloudExadataInfrastructureLifecycleStateProvisioning, + CloudExadataInfrastructureLifecycleStateTerminated, + CloudExadataInfrastructureLifecycleStateTerminating, + CloudExadataInfrastructureLifecycleStateUpdating, + } +} + +// CloudVMClusterLifecycleState - Cloud VM Cluster lifecycle state enum +type CloudVMClusterLifecycleState string + +const ( + // CloudVMClusterLifecycleStateAvailable - Indicates that resource in Available state + CloudVMClusterLifecycleStateAvailable CloudVMClusterLifecycleState = "Available" + // CloudVMClusterLifecycleStateFailed - Indicates that resource in Failed state + CloudVMClusterLifecycleStateFailed CloudVMClusterLifecycleState = "Failed" + // CloudVMClusterLifecycleStateMaintenanceInProgress - Indicates that resource Maintenance in progress state + CloudVMClusterLifecycleStateMaintenanceInProgress CloudVMClusterLifecycleState = "MaintenanceInProgress" + // CloudVMClusterLifecycleStateProvisioning - Indicates that resource in Provisioning state + CloudVMClusterLifecycleStateProvisioning CloudVMClusterLifecycleState = "Provisioning" + // CloudVMClusterLifecycleStateTerminated - Indicates that resource in Terminated state + CloudVMClusterLifecycleStateTerminated CloudVMClusterLifecycleState = "Terminated" + // CloudVMClusterLifecycleStateTerminating - Indicates that resource in Terminating state + CloudVMClusterLifecycleStateTerminating CloudVMClusterLifecycleState = "Terminating" + // CloudVMClusterLifecycleStateUpdating - Indicates that resource in Updating state + CloudVMClusterLifecycleStateUpdating CloudVMClusterLifecycleState = "Updating" +) + +// PossibleCloudVMClusterLifecycleStateValues returns the possible values for the CloudVMClusterLifecycleState const type. +func PossibleCloudVMClusterLifecycleStateValues() []CloudVMClusterLifecycleState { + return []CloudVMClusterLifecycleState{ + CloudVMClusterLifecycleStateAvailable, + CloudVMClusterLifecycleStateFailed, + CloudVMClusterLifecycleStateMaintenanceInProgress, + CloudVMClusterLifecycleStateProvisioning, + CloudVMClusterLifecycleStateTerminated, + CloudVMClusterLifecycleStateTerminating, + CloudVMClusterLifecycleStateUpdating, + } +} + +// ComputeModel - Compute model enum +type ComputeModel string + +const ( + // ComputeModelECPU - ECPU model type + ComputeModelECPU ComputeModel = "ECPU" + // ComputeModelOCPU - OCPU model type + ComputeModelOCPU ComputeModel = "OCPU" +) + +// PossibleComputeModelValues returns the possible values for the ComputeModel const type. +func PossibleComputeModelValues() []ComputeModel { + return []ComputeModel{ + ComputeModelECPU, + ComputeModelOCPU, + } +} + +// ConsumerGroup - Consumer group enum. +type ConsumerGroup string + +const ( + // ConsumerGroupHigh - High group + ConsumerGroupHigh ConsumerGroup = "High" + // ConsumerGroupLow - Low group + ConsumerGroupLow ConsumerGroup = "Low" + // ConsumerGroupMedium - Medium group + ConsumerGroupMedium ConsumerGroup = "Medium" + // ConsumerGroupTp - TP group + ConsumerGroupTp ConsumerGroup = "Tp" + // ConsumerGroupTpurgent - TPurgent group + ConsumerGroupTpurgent ConsumerGroup = "Tpurgent" +) + +// PossibleConsumerGroupValues returns the possible values for the ConsumerGroup const type. +func PossibleConsumerGroupValues() []ConsumerGroup { + return []ConsumerGroup{ + ConsumerGroupHigh, + ConsumerGroupLow, + ConsumerGroupMedium, + ConsumerGroupTp, + ConsumerGroupTpurgent, + } +} + +// CreatedByType - The kind of entity that created the resource. +type CreatedByType string + +const ( + // CreatedByTypeApplication - The entity was created by an application. + CreatedByTypeApplication CreatedByType = "Application" + // CreatedByTypeKey - The entity was created by a key. + CreatedByTypeKey CreatedByType = "Key" + // CreatedByTypeManagedIdentity - The entity was created by a managed identity. + CreatedByTypeManagedIdentity CreatedByType = "ManagedIdentity" + // CreatedByTypeUser - The entity was created by a user. + CreatedByTypeUser CreatedByType = "User" +) + +// PossibleCreatedByTypeValues returns the possible values for the CreatedByType const type. +func PossibleCreatedByTypeValues() []CreatedByType { + return []CreatedByType{ + CreatedByTypeApplication, + CreatedByTypeKey, + CreatedByTypeManagedIdentity, + CreatedByTypeUser, + } +} + +// DNSPrivateViewsLifecycleState - DNS Private Views lifecycle state enum +type DNSPrivateViewsLifecycleState string + +const ( + // DNSPrivateViewsLifecycleStateActive - DNS Private View is active + DNSPrivateViewsLifecycleStateActive DNSPrivateViewsLifecycleState = "Active" + // DNSPrivateViewsLifecycleStateDeleted - DNS Private View is deleted + DNSPrivateViewsLifecycleStateDeleted DNSPrivateViewsLifecycleState = "Deleted" + // DNSPrivateViewsLifecycleStateDeleting - DNS Private View is deleting + DNSPrivateViewsLifecycleStateDeleting DNSPrivateViewsLifecycleState = "Deleting" + // DNSPrivateViewsLifecycleStateUpdating - DNS Private View is updating + DNSPrivateViewsLifecycleStateUpdating DNSPrivateViewsLifecycleState = "Updating" +) + +// PossibleDNSPrivateViewsLifecycleStateValues returns the possible values for the DNSPrivateViewsLifecycleState const type. +func PossibleDNSPrivateViewsLifecycleStateValues() []DNSPrivateViewsLifecycleState { + return []DNSPrivateViewsLifecycleState{ + DNSPrivateViewsLifecycleStateActive, + DNSPrivateViewsLifecycleStateDeleted, + DNSPrivateViewsLifecycleStateDeleting, + DNSPrivateViewsLifecycleStateUpdating, + } +} + +// DNSPrivateZonesLifecycleState - DNS Private Zones lifecycle state enum +type DNSPrivateZonesLifecycleState string + +const ( + // DNSPrivateZonesLifecycleStateActive - DNS Private Zones is active + DNSPrivateZonesLifecycleStateActive DNSPrivateZonesLifecycleState = "Active" + // DNSPrivateZonesLifecycleStateCreating - DNS Private Zones is creating + DNSPrivateZonesLifecycleStateCreating DNSPrivateZonesLifecycleState = "Creating" + // DNSPrivateZonesLifecycleStateDeleted - DNS Private Zones is deleted + DNSPrivateZonesLifecycleStateDeleted DNSPrivateZonesLifecycleState = "Deleted" + // DNSPrivateZonesLifecycleStateDeleting - DNS Private Zones is deleting + DNSPrivateZonesLifecycleStateDeleting DNSPrivateZonesLifecycleState = "Deleting" + // DNSPrivateZonesLifecycleStateUpdating - DNS Private Zones is updating + DNSPrivateZonesLifecycleStateUpdating DNSPrivateZonesLifecycleState = "Updating" +) + +// PossibleDNSPrivateZonesLifecycleStateValues returns the possible values for the DNSPrivateZonesLifecycleState const type. +func PossibleDNSPrivateZonesLifecycleStateValues() []DNSPrivateZonesLifecycleState { + return []DNSPrivateZonesLifecycleState{ + DNSPrivateZonesLifecycleStateActive, + DNSPrivateZonesLifecycleStateCreating, + DNSPrivateZonesLifecycleStateDeleted, + DNSPrivateZonesLifecycleStateDeleting, + DNSPrivateZonesLifecycleStateUpdating, + } +} + +// DataBaseType - Database type enum +type DataBaseType string + +const ( + // DataBaseTypeClone - Clone DB + DataBaseTypeClone DataBaseType = "Clone" + // DataBaseTypeCloneFromBackupTimestamp - Clone DB from backup timestamp + DataBaseTypeCloneFromBackupTimestamp DataBaseType = "CloneFromBackupTimestamp" + // DataBaseTypeCrossRegionDisasterRecovery - Cross Region Disaster Recovery + DataBaseTypeCrossRegionDisasterRecovery DataBaseType = "CrossRegionDisasterRecovery" + // DataBaseTypeRegular - Regular DB + DataBaseTypeRegular DataBaseType = "Regular" +) + +// PossibleDataBaseTypeValues returns the possible values for the DataBaseType const type. +func PossibleDataBaseTypeValues() []DataBaseType { + return []DataBaseType{ + DataBaseTypeClone, + DataBaseTypeCloneFromBackupTimestamp, + DataBaseTypeCrossRegionDisasterRecovery, + DataBaseTypeRegular, + } +} + +// DataSafeStatusType - DataSafe status type enum. +type DataSafeStatusType string + +const ( + // DataSafeStatusTypeDeregistering - Deregistering status + DataSafeStatusTypeDeregistering DataSafeStatusType = "Deregistering" + // DataSafeStatusTypeFailed - Failed status + DataSafeStatusTypeFailed DataSafeStatusType = "Failed" + // DataSafeStatusTypeNotRegistered - NotRegistered status + DataSafeStatusTypeNotRegistered DataSafeStatusType = "NotRegistered" + // DataSafeStatusTypeRegistered - Registered status + DataSafeStatusTypeRegistered DataSafeStatusType = "Registered" + // DataSafeStatusTypeRegistering - Registering status + DataSafeStatusTypeRegistering DataSafeStatusType = "Registering" +) + +// PossibleDataSafeStatusTypeValues returns the possible values for the DataSafeStatusType const type. +func PossibleDataSafeStatusTypeValues() []DataSafeStatusType { + return []DataSafeStatusType{ + DataSafeStatusTypeDeregistering, + DataSafeStatusTypeFailed, + DataSafeStatusTypeNotRegistered, + DataSafeStatusTypeRegistered, + DataSafeStatusTypeRegistering, + } +} + +// DatabaseEditionType - Database edition type enum. +type DatabaseEditionType string + +const ( + // DatabaseEditionTypeEnterpriseEdition - Enterprise edition + DatabaseEditionTypeEnterpriseEdition DatabaseEditionType = "EnterpriseEdition" + // DatabaseEditionTypeStandardEdition - Standard edition + DatabaseEditionTypeStandardEdition DatabaseEditionType = "StandardEdition" +) + +// PossibleDatabaseEditionTypeValues returns the possible values for the DatabaseEditionType const type. +func PossibleDatabaseEditionTypeValues() []DatabaseEditionType { + return []DatabaseEditionType{ + DatabaseEditionTypeEnterpriseEdition, + DatabaseEditionTypeStandardEdition, + } +} + +// DayOfWeekName - DayOfWeekName enum +type DayOfWeekName string + +const ( + // DayOfWeekNameFriday - Friday value + DayOfWeekNameFriday DayOfWeekName = "Friday" + // DayOfWeekNameMonday - Monday value + DayOfWeekNameMonday DayOfWeekName = "Monday" + // DayOfWeekNameSaturday - Saturday value + DayOfWeekNameSaturday DayOfWeekName = "Saturday" + // DayOfWeekNameSunday - Sunday value + DayOfWeekNameSunday DayOfWeekName = "Sunday" + // DayOfWeekNameThursday - Thursday value + DayOfWeekNameThursday DayOfWeekName = "Thursday" + // DayOfWeekNameTuesday - Tuesday value + DayOfWeekNameTuesday DayOfWeekName = "Tuesday" + // DayOfWeekNameWednesday - Wednesday value + DayOfWeekNameWednesday DayOfWeekName = "Wednesday" +) + +// PossibleDayOfWeekNameValues returns the possible values for the DayOfWeekName const type. +func PossibleDayOfWeekNameValues() []DayOfWeekName { + return []DayOfWeekName{ + DayOfWeekNameFriday, + DayOfWeekNameMonday, + DayOfWeekNameSaturday, + DayOfWeekNameSunday, + DayOfWeekNameThursday, + DayOfWeekNameTuesday, + DayOfWeekNameWednesday, + } +} + +// DbNodeActionEnum - DbNode action enum +type DbNodeActionEnum string + +const ( + // DbNodeActionEnumReset - Reset DbNode + DbNodeActionEnumReset DbNodeActionEnum = "Reset" + // DbNodeActionEnumSoftReset - Soft reset DbNode + DbNodeActionEnumSoftReset DbNodeActionEnum = "SoftReset" + // DbNodeActionEnumStart - Start DbNode + DbNodeActionEnumStart DbNodeActionEnum = "Start" + // DbNodeActionEnumStop - Stop DbNode + DbNodeActionEnumStop DbNodeActionEnum = "Stop" +) + +// PossibleDbNodeActionEnumValues returns the possible values for the DbNodeActionEnum const type. +func PossibleDbNodeActionEnumValues() []DbNodeActionEnum { + return []DbNodeActionEnum{ + DbNodeActionEnumReset, + DbNodeActionEnumSoftReset, + DbNodeActionEnumStart, + DbNodeActionEnumStop, + } +} + +// DbNodeMaintenanceType - The type of database node maintenance. +type DbNodeMaintenanceType string + +const ( + // DbNodeMaintenanceTypeVmdbRebootMigration - VMDB reboot migration maintenance type + DbNodeMaintenanceTypeVmdbRebootMigration DbNodeMaintenanceType = "VmdbRebootMigration" +) + +// PossibleDbNodeMaintenanceTypeValues returns the possible values for the DbNodeMaintenanceType const type. +func PossibleDbNodeMaintenanceTypeValues() []DbNodeMaintenanceType { + return []DbNodeMaintenanceType{ + DbNodeMaintenanceTypeVmdbRebootMigration, + } +} + +// DbNodeProvisioningState - DnNode provisioning state enum +type DbNodeProvisioningState string + +const ( + // DbNodeProvisioningStateAvailable - Indicates that resource in Available state + DbNodeProvisioningStateAvailable DbNodeProvisioningState = "Available" + // DbNodeProvisioningStateFailed - Indicates that resource in Failed state + DbNodeProvisioningStateFailed DbNodeProvisioningState = "Failed" + // DbNodeProvisioningStateProvisioning - Indicates that resource in Provisioning state + DbNodeProvisioningStateProvisioning DbNodeProvisioningState = "Provisioning" + // DbNodeProvisioningStateStarting - Indicates that resource in Starting state + DbNodeProvisioningStateStarting DbNodeProvisioningState = "Starting" + // DbNodeProvisioningStateStopped - Indicates that resource in Stopped state + DbNodeProvisioningStateStopped DbNodeProvisioningState = "Stopped" + // DbNodeProvisioningStateStopping - Indicates that resource in Stopping state + DbNodeProvisioningStateStopping DbNodeProvisioningState = "Stopping" + // DbNodeProvisioningStateTerminated - Indicates that resource in Terminated state + DbNodeProvisioningStateTerminated DbNodeProvisioningState = "Terminated" + // DbNodeProvisioningStateTerminating - Indicates that resource in Terminating state + DbNodeProvisioningStateTerminating DbNodeProvisioningState = "Terminating" + // DbNodeProvisioningStateUpdating - Indicates that resource in Updating state + DbNodeProvisioningStateUpdating DbNodeProvisioningState = "Updating" +) + +// PossibleDbNodeProvisioningStateValues returns the possible values for the DbNodeProvisioningState const type. +func PossibleDbNodeProvisioningStateValues() []DbNodeProvisioningState { + return []DbNodeProvisioningState{ + DbNodeProvisioningStateAvailable, + DbNodeProvisioningStateFailed, + DbNodeProvisioningStateProvisioning, + DbNodeProvisioningStateStarting, + DbNodeProvisioningStateStopped, + DbNodeProvisioningStateStopping, + DbNodeProvisioningStateTerminated, + DbNodeProvisioningStateTerminating, + DbNodeProvisioningStateUpdating, + } +} + +// DbServerPatchingStatus - DB Server patching status enum +type DbServerPatchingStatus string + +const ( + // DbServerPatchingStatusComplete - Patching completed + DbServerPatchingStatusComplete DbServerPatchingStatus = "Complete" + // DbServerPatchingStatusFailed - Patching failed + DbServerPatchingStatusFailed DbServerPatchingStatus = "Failed" + // DbServerPatchingStatusMaintenanceInProgress - Patching in progress + DbServerPatchingStatusMaintenanceInProgress DbServerPatchingStatus = "MaintenanceInProgress" + // DbServerPatchingStatusScheduled - Patching scheduled + DbServerPatchingStatusScheduled DbServerPatchingStatus = "Scheduled" +) + +// PossibleDbServerPatchingStatusValues returns the possible values for the DbServerPatchingStatus const type. +func PossibleDbServerPatchingStatusValues() []DbServerPatchingStatus { + return []DbServerPatchingStatus{ + DbServerPatchingStatusComplete, + DbServerPatchingStatusFailed, + DbServerPatchingStatusMaintenanceInProgress, + DbServerPatchingStatusScheduled, + } +} + +// DbServerProvisioningState - DbServerProvisioningState enum +type DbServerProvisioningState string + +const ( + // DbServerProvisioningStateAvailable - Indicates that resource in Available state + DbServerProvisioningStateAvailable DbServerProvisioningState = "Available" + // DbServerProvisioningStateCreating - Indicates that resource in Creating state + DbServerProvisioningStateCreating DbServerProvisioningState = "Creating" + // DbServerProvisioningStateDeleted - Indicates that resource in Deleted state + DbServerProvisioningStateDeleted DbServerProvisioningState = "Deleted" + // DbServerProvisioningStateDeleting - Indicates that resource in Deleting state + DbServerProvisioningStateDeleting DbServerProvisioningState = "Deleting" + // DbServerProvisioningStateMaintenanceInProgress - Indicates that resource maintenance in progress state + DbServerProvisioningStateMaintenanceInProgress DbServerProvisioningState = "MaintenanceInProgress" + // DbServerProvisioningStateUnavailable - Indicates that resource in Unavailable state + DbServerProvisioningStateUnavailable DbServerProvisioningState = "Unavailable" +) + +// PossibleDbServerProvisioningStateValues returns the possible values for the DbServerProvisioningState const type. +func PossibleDbServerProvisioningStateValues() []DbServerProvisioningState { + return []DbServerProvisioningState{ + DbServerProvisioningStateAvailable, + DbServerProvisioningStateCreating, + DbServerProvisioningStateDeleted, + DbServerProvisioningStateDeleting, + DbServerProvisioningStateMaintenanceInProgress, + DbServerProvisioningStateUnavailable, + } +} + +// DisasterRecoveryType - Disaster recovery type enum. +type DisasterRecoveryType string + +const ( + // DisasterRecoveryTypeAdg - ADG type + DisasterRecoveryTypeAdg DisasterRecoveryType = "Adg" + // DisasterRecoveryTypeBackupBased - Backup based type + DisasterRecoveryTypeBackupBased DisasterRecoveryType = "BackupBased" +) + +// PossibleDisasterRecoveryTypeValues returns the possible values for the DisasterRecoveryType const type. +func PossibleDisasterRecoveryTypeValues() []DisasterRecoveryType { + return []DisasterRecoveryType{ + DisasterRecoveryTypeAdg, + DisasterRecoveryTypeBackupBased, + } +} + +// DiskRedundancy - Disk redundancy enum +type DiskRedundancy string + +const ( + // DiskRedundancyHigh - High redundancy + DiskRedundancyHigh DiskRedundancy = "High" + // DiskRedundancyNormal - Normal redundancy + DiskRedundancyNormal DiskRedundancy = "Normal" +) + +// PossibleDiskRedundancyValues returns the possible values for the DiskRedundancy const type. +func PossibleDiskRedundancyValues() []DiskRedundancy { + return []DiskRedundancy{ + DiskRedundancyHigh, + DiskRedundancyNormal, + } +} + +// ExadbVMClusterLifecycleState - Exadata VM cluster on Exascale Infrastructure lifecycle state enum +type ExadbVMClusterLifecycleState string + +const ( + // ExadbVMClusterLifecycleStateAvailable - Indicates that resource in Available state + ExadbVMClusterLifecycleStateAvailable ExadbVMClusterLifecycleState = "Available" + // ExadbVMClusterLifecycleStateFailed - Indicates that resource in Failed state + ExadbVMClusterLifecycleStateFailed ExadbVMClusterLifecycleState = "Failed" + // ExadbVMClusterLifecycleStateMaintenanceInProgress - Indicates that resource Maintenance in progress state + ExadbVMClusterLifecycleStateMaintenanceInProgress ExadbVMClusterLifecycleState = "MaintenanceInProgress" + // ExadbVMClusterLifecycleStateProvisioning - Indicates that resource in Provisioning state + ExadbVMClusterLifecycleStateProvisioning ExadbVMClusterLifecycleState = "Provisioning" + // ExadbVMClusterLifecycleStateTerminated - Indicates that resource in Terminated state + ExadbVMClusterLifecycleStateTerminated ExadbVMClusterLifecycleState = "Terminated" + // ExadbVMClusterLifecycleStateTerminating - Indicates that resource in Terminating state + ExadbVMClusterLifecycleStateTerminating ExadbVMClusterLifecycleState = "Terminating" + // ExadbVMClusterLifecycleStateUpdating - Indicates that resource in Updating state + ExadbVMClusterLifecycleStateUpdating ExadbVMClusterLifecycleState = "Updating" +) + +// PossibleExadbVMClusterLifecycleStateValues returns the possible values for the ExadbVMClusterLifecycleState const type. +func PossibleExadbVMClusterLifecycleStateValues() []ExadbVMClusterLifecycleState { + return []ExadbVMClusterLifecycleState{ + ExadbVMClusterLifecycleStateAvailable, + ExadbVMClusterLifecycleStateFailed, + ExadbVMClusterLifecycleStateMaintenanceInProgress, + ExadbVMClusterLifecycleStateProvisioning, + ExadbVMClusterLifecycleStateTerminated, + ExadbVMClusterLifecycleStateTerminating, + ExadbVMClusterLifecycleStateUpdating, + } +} + +// ExascaleDbStorageVaultLifecycleState - Exadata Database Storage Vault lifecycle state enum +type ExascaleDbStorageVaultLifecycleState string + +const ( + // ExascaleDbStorageVaultLifecycleStateAvailable - Indicates that resource in Available state + ExascaleDbStorageVaultLifecycleStateAvailable ExascaleDbStorageVaultLifecycleState = "Available" + // ExascaleDbStorageVaultLifecycleStateFailed - Indicates that resource in Failed state + ExascaleDbStorageVaultLifecycleStateFailed ExascaleDbStorageVaultLifecycleState = "Failed" + // ExascaleDbStorageVaultLifecycleStateProvisioning - Indicates that resource in Provisioning state + ExascaleDbStorageVaultLifecycleStateProvisioning ExascaleDbStorageVaultLifecycleState = "Provisioning" + // ExascaleDbStorageVaultLifecycleStateTerminated - Indicates that resource in Terminated state + ExascaleDbStorageVaultLifecycleStateTerminated ExascaleDbStorageVaultLifecycleState = "Terminated" + // ExascaleDbStorageVaultLifecycleStateTerminating - Indicates that resource in Terminating state + ExascaleDbStorageVaultLifecycleStateTerminating ExascaleDbStorageVaultLifecycleState = "Terminating" + // ExascaleDbStorageVaultLifecycleStateUpdating - Indicates that resource in Updating state + ExascaleDbStorageVaultLifecycleStateUpdating ExascaleDbStorageVaultLifecycleState = "Updating" +) + +// PossibleExascaleDbStorageVaultLifecycleStateValues returns the possible values for the ExascaleDbStorageVaultLifecycleState const type. +func PossibleExascaleDbStorageVaultLifecycleStateValues() []ExascaleDbStorageVaultLifecycleState { + return []ExascaleDbStorageVaultLifecycleState{ + ExascaleDbStorageVaultLifecycleStateAvailable, + ExascaleDbStorageVaultLifecycleStateFailed, + ExascaleDbStorageVaultLifecycleStateProvisioning, + ExascaleDbStorageVaultLifecycleStateTerminated, + ExascaleDbStorageVaultLifecycleStateTerminating, + ExascaleDbStorageVaultLifecycleStateUpdating, + } +} + +// GenerateType - Generate type enum +type GenerateType string + +const ( + // GenerateTypeAll - Generate all + GenerateTypeAll GenerateType = "All" + // GenerateTypeSingle - Generate single + GenerateTypeSingle GenerateType = "Single" +) + +// PossibleGenerateTypeValues returns the possible values for the GenerateType const type. +func PossibleGenerateTypeValues() []GenerateType { + return []GenerateType{ + GenerateTypeAll, + GenerateTypeSingle, + } +} + +// GridImageType - GridImageType enum +type GridImageType string + +const ( + // GridImageTypeCustomImage - Custom image + GridImageTypeCustomImage GridImageType = "CustomImage" + // GridImageTypeReleaseUpdate - Release update + GridImageTypeReleaseUpdate GridImageType = "ReleaseUpdate" +) + +// PossibleGridImageTypeValues returns the possible values for the GridImageType const type. +func PossibleGridImageTypeValues() []GridImageType { + return []GridImageType{ + GridImageTypeCustomImage, + GridImageTypeReleaseUpdate, + } +} + +// HardwareType - Hardware Type enum +type HardwareType string + +const ( + // HardwareTypeCELL - Hardware type is Storage Server + HardwareTypeCELL HardwareType = "CELL" + // HardwareTypeCOMPUTE - Hardware type is Database Server + HardwareTypeCOMPUTE HardwareType = "COMPUTE" +) + +// PossibleHardwareTypeValues returns the possible values for the HardwareType const type. +func PossibleHardwareTypeValues() []HardwareType { + return []HardwareType{ + HardwareTypeCELL, + HardwareTypeCOMPUTE, + } +} + +// HostFormatType - Host format type enum. +type HostFormatType string + +const ( + // HostFormatTypeFqdn - FQDN format + HostFormatTypeFqdn HostFormatType = "Fqdn" + // HostFormatTypeIP - IP format + HostFormatTypeIP HostFormatType = "Ip" +) + +// PossibleHostFormatTypeValues returns the possible values for the HostFormatType const type. +func PossibleHostFormatTypeValues() []HostFormatType { + return []HostFormatType{ + HostFormatTypeFqdn, + HostFormatTypeIP, + } +} + +// Intent - Intent enum +type Intent string + +const ( + // IntentReset - Reset intent + IntentReset Intent = "Reset" + // IntentRetain - Retain intent + IntentRetain Intent = "Retain" +) + +// PossibleIntentValues returns the possible values for the Intent const type. +func PossibleIntentValues() []Intent { + return []Intent{ + IntentReset, + IntentRetain, + } +} + +// IormLifecycleState - ORM lifecycle state enum +type IormLifecycleState string + +const ( + // IormLifecycleStateBootStrapping - Indicates that resource in Provisioning state + IormLifecycleStateBootStrapping IormLifecycleState = "BootStrapping" + // IormLifecycleStateDisabled - Indicates that resource in Disabled state + IormLifecycleStateDisabled IormLifecycleState = "Disabled" + // IormLifecycleStateEnabled - Indicates that resource in Enabled state + IormLifecycleStateEnabled IormLifecycleState = "Enabled" + // IormLifecycleStateFailed - Indicates that resource in Failed state + IormLifecycleStateFailed IormLifecycleState = "Failed" + // IormLifecycleStateUpdating - Indicates that resource in Updating state + IormLifecycleStateUpdating IormLifecycleState = "Updating" +) + +// PossibleIormLifecycleStateValues returns the possible values for the IormLifecycleState const type. +func PossibleIormLifecycleStateValues() []IormLifecycleState { + return []IormLifecycleState{ + IormLifecycleStateBootStrapping, + IormLifecycleStateDisabled, + IormLifecycleStateEnabled, + IormLifecycleStateFailed, + IormLifecycleStateUpdating, + } +} + +// LicenseModel - LicenseModel enum +type LicenseModel string + +const ( + // LicenseModelBringYourOwnLicense - Bring Your Own License + LicenseModelBringYourOwnLicense LicenseModel = "BringYourOwnLicense" + // LicenseModelLicenseIncluded - License included + LicenseModelLicenseIncluded LicenseModel = "LicenseIncluded" +) + +// PossibleLicenseModelValues returns the possible values for the LicenseModel const type. +func PossibleLicenseModelValues() []LicenseModel { + return []LicenseModel{ + LicenseModelBringYourOwnLicense, + LicenseModelLicenseIncluded, + } +} + +// MonthName - MonthName enum +type MonthName string + +const ( + // MonthNameApril - April value + MonthNameApril MonthName = "April" + // MonthNameAugust - August value + MonthNameAugust MonthName = "August" + // MonthNameDecember - December value + MonthNameDecember MonthName = "December" + // MonthNameFebruary - February value + MonthNameFebruary MonthName = "February" + // MonthNameJanuary - January value + MonthNameJanuary MonthName = "January" + // MonthNameJuly - July value + MonthNameJuly MonthName = "July" + // MonthNameJune - June value + MonthNameJune MonthName = "June" + // MonthNameMarch - March value + MonthNameMarch MonthName = "March" + // MonthNameMay - May value + MonthNameMay MonthName = "May" + // MonthNameNovember - November value + MonthNameNovember MonthName = "November" + // MonthNameOctober - October value + MonthNameOctober MonthName = "October" + // MonthNameSeptember - September value + MonthNameSeptember MonthName = "September" +) + +// PossibleMonthNameValues returns the possible values for the MonthName const type. +func PossibleMonthNameValues() []MonthName { + return []MonthName{ + MonthNameApril, + MonthNameAugust, + MonthNameDecember, + MonthNameFebruary, + MonthNameJanuary, + MonthNameJuly, + MonthNameJune, + MonthNameMarch, + MonthNameMay, + MonthNameNovember, + MonthNameOctober, + MonthNameSeptember, + } +} + +// Objective - Objective enum +type Objective string + +const ( + // ObjectiveAuto - Auto objective + ObjectiveAuto Objective = "Auto" + // ObjectiveBalanced - Balanced objective + ObjectiveBalanced Objective = "Balanced" + // ObjectiveBasic - Basic objective + ObjectiveBasic Objective = "Basic" + // ObjectiveHighThroughput - High throughput objective + ObjectiveHighThroughput Objective = "HighThroughput" + // ObjectiveLowLatency - Low latency objective + ObjectiveLowLatency Objective = "LowLatency" +) + +// PossibleObjectiveValues returns the possible values for the Objective const type. +func PossibleObjectiveValues() []Objective { + return []Objective{ + ObjectiveAuto, + ObjectiveBalanced, + ObjectiveBasic, + ObjectiveHighThroughput, + ObjectiveLowLatency, + } +} + +// OpenModeType - Open mode type enum. +type OpenModeType string + +const ( + // OpenModeTypeReadOnly - ReadOnly mode + OpenModeTypeReadOnly OpenModeType = "ReadOnly" + // OpenModeTypeReadWrite - ReadWrite mode + OpenModeTypeReadWrite OpenModeType = "ReadWrite" +) + +// PossibleOpenModeTypeValues returns the possible values for the OpenModeType const type. +func PossibleOpenModeTypeValues() []OpenModeType { + return []OpenModeType{ + OpenModeTypeReadOnly, + OpenModeTypeReadWrite, + } +} + +// OperationsInsightsStatusType - Operations Insights status type enum. +type OperationsInsightsStatusType string + +const ( + // OperationsInsightsStatusTypeDisabling - Disabling status + OperationsInsightsStatusTypeDisabling OperationsInsightsStatusType = "Disabling" + // OperationsInsightsStatusTypeEnabled - Enabled status + OperationsInsightsStatusTypeEnabled OperationsInsightsStatusType = "Enabled" + // OperationsInsightsStatusTypeEnabling - Enabling status + OperationsInsightsStatusTypeEnabling OperationsInsightsStatusType = "Enabling" + // OperationsInsightsStatusTypeFailedDisabling - FailedDisabling status + OperationsInsightsStatusTypeFailedDisabling OperationsInsightsStatusType = "FailedDisabling" + // OperationsInsightsStatusTypeFailedEnabling - FailedEnabling status + OperationsInsightsStatusTypeFailedEnabling OperationsInsightsStatusType = "FailedEnabling" + // OperationsInsightsStatusTypeNotEnabled - NotEnabled status + OperationsInsightsStatusTypeNotEnabled OperationsInsightsStatusType = "NotEnabled" +) + +// PossibleOperationsInsightsStatusTypeValues returns the possible values for the OperationsInsightsStatusType const type. +func PossibleOperationsInsightsStatusTypeValues() []OperationsInsightsStatusType { + return []OperationsInsightsStatusType{ + OperationsInsightsStatusTypeDisabling, + OperationsInsightsStatusTypeEnabled, + OperationsInsightsStatusTypeEnabling, + OperationsInsightsStatusTypeFailedDisabling, + OperationsInsightsStatusTypeFailedEnabling, + OperationsInsightsStatusTypeNotEnabled, + } +} + +// OracleSubscriptionProvisioningState - OracleSubscriptionProvisioningState enum +type OracleSubscriptionProvisioningState string + +const ( + // OracleSubscriptionProvisioningStateCanceled - Resource creation was canceled. + OracleSubscriptionProvisioningStateCanceled OracleSubscriptionProvisioningState = "Canceled" + // OracleSubscriptionProvisioningStateFailed - Resource creation failed. + OracleSubscriptionProvisioningStateFailed OracleSubscriptionProvisioningState = "Failed" + // OracleSubscriptionProvisioningStateSucceeded - Resource has been created. + OracleSubscriptionProvisioningStateSucceeded OracleSubscriptionProvisioningState = "Succeeded" +) + +// PossibleOracleSubscriptionProvisioningStateValues returns the possible values for the OracleSubscriptionProvisioningState const type. +func PossibleOracleSubscriptionProvisioningStateValues() []OracleSubscriptionProvisioningState { + return []OracleSubscriptionProvisioningState{ + OracleSubscriptionProvisioningStateCanceled, + OracleSubscriptionProvisioningStateFailed, + OracleSubscriptionProvisioningStateSucceeded, + } +} + +// Origin - The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default +// value is "user,system" +type Origin string + +const ( + // OriginSystem - Indicates the operation is initiated by a system. + OriginSystem Origin = "system" + // OriginUser - Indicates the operation is initiated by a user. + OriginUser Origin = "user" + // OriginUserSystem - Indicates the operation is initiated by a user or system. + OriginUserSystem Origin = "user,system" +) + +// PossibleOriginValues returns the possible values for the Origin const type. +func PossibleOriginValues() []Origin { + return []Origin{ + OriginSystem, + OriginUser, + OriginUserSystem, + } +} + +// PatchingMode - Patching mode enum +type PatchingMode string + +const ( + // PatchingModeNonRolling - Non Rolling patching + PatchingModeNonRolling PatchingMode = "NonRolling" + // PatchingModeRolling - Rolling patching + PatchingModeRolling PatchingMode = "Rolling" +) + +// PossiblePatchingModeValues returns the possible values for the PatchingMode const type. +func PossiblePatchingModeValues() []PatchingMode { + return []PatchingMode{ + PatchingModeNonRolling, + PatchingModeRolling, + } +} + +// PermissionLevelType - Permission level type enum. +type PermissionLevelType string + +const ( + // PermissionLevelTypeRestricted - Restricted permission level + PermissionLevelTypeRestricted PermissionLevelType = "Restricted" + // PermissionLevelTypeUnrestricted - Unrestricted permission level + PermissionLevelTypeUnrestricted PermissionLevelType = "Unrestricted" +) + +// PossiblePermissionLevelTypeValues returns the possible values for the PermissionLevelType const type. +func PossiblePermissionLevelTypeValues() []PermissionLevelType { + return []PermissionLevelType{ + PermissionLevelTypeRestricted, + PermissionLevelTypeUnrestricted, + } +} + +// Preference - Preference enum +type Preference string + +const ( + // PreferenceCustomPreference - Custom preference + PreferenceCustomPreference Preference = "CustomPreference" + // PreferenceNoPreference - No preference + PreferenceNoPreference Preference = "NoPreference" +) + +// PossiblePreferenceValues returns the possible values for the Preference const type. +func PossiblePreferenceValues() []Preference { + return []Preference{ + PreferenceCustomPreference, + PreferenceNoPreference, + } +} + +// ProtocolType - Protocol type enum. +type ProtocolType string + +const ( + // ProtocolTypeTCP - TCP protocol + ProtocolTypeTCP ProtocolType = "TCP" + // ProtocolTypeTCPS - TCPS protocol + ProtocolTypeTCPS ProtocolType = "TCPS" +) + +// PossibleProtocolTypeValues returns the possible values for the ProtocolType const type. +func PossibleProtocolTypeValues() []ProtocolType { + return []ProtocolType{ + ProtocolTypeTCP, + ProtocolTypeTCPS, + } +} + +// RefreshableModelType - Refreshable model type enum +type RefreshableModelType string + +const ( + // RefreshableModelTypeAutomatic - Automatic refreshable model type + RefreshableModelTypeAutomatic RefreshableModelType = "Automatic" + // RefreshableModelTypeManual - Manual refreshable model type + RefreshableModelTypeManual RefreshableModelType = "Manual" +) + +// PossibleRefreshableModelTypeValues returns the possible values for the RefreshableModelType const type. +func PossibleRefreshableModelTypeValues() []RefreshableModelType { + return []RefreshableModelType{ + RefreshableModelTypeAutomatic, + RefreshableModelTypeManual, + } +} + +// RefreshableStatusType - Refreshable status type enum. +type RefreshableStatusType string + +const ( + // RefreshableStatusTypeNotRefreshing - NotRefreshing status + RefreshableStatusTypeNotRefreshing RefreshableStatusType = "NotRefreshing" + // RefreshableStatusTypeRefreshing - Refreshing status + RefreshableStatusTypeRefreshing RefreshableStatusType = "Refreshing" +) + +// PossibleRefreshableStatusTypeValues returns the possible values for the RefreshableStatusType const type. +func PossibleRefreshableStatusTypeValues() []RefreshableStatusType { + return []RefreshableStatusType{ + RefreshableStatusTypeNotRefreshing, + RefreshableStatusTypeRefreshing, + } +} + +// RepeatCadenceType - Repeat cadence type enum +type RepeatCadenceType string + +const ( + // RepeatCadenceTypeMonthly - Repeat monthly + RepeatCadenceTypeMonthly RepeatCadenceType = "Monthly" + // RepeatCadenceTypeOneTime - Repeat one time + RepeatCadenceTypeOneTime RepeatCadenceType = "OneTime" + // RepeatCadenceTypeWeekly - Repeat weekly + RepeatCadenceTypeWeekly RepeatCadenceType = "Weekly" + // RepeatCadenceTypeYearly - Repeat yearly + RepeatCadenceTypeYearly RepeatCadenceType = "Yearly" +) + +// PossibleRepeatCadenceTypeValues returns the possible values for the RepeatCadenceType const type. +func PossibleRepeatCadenceTypeValues() []RepeatCadenceType { + return []RepeatCadenceType{ + RepeatCadenceTypeMonthly, + RepeatCadenceTypeOneTime, + RepeatCadenceTypeWeekly, + RepeatCadenceTypeYearly, + } +} + +// ResourceProvisioningState - The provisioning state of a resource type. +type ResourceProvisioningState string + +const ( + // ResourceProvisioningStateCanceled - Resource creation was canceled. + ResourceProvisioningStateCanceled ResourceProvisioningState = "Canceled" + // ResourceProvisioningStateFailed - Resource creation failed. + ResourceProvisioningStateFailed ResourceProvisioningState = "Failed" + // ResourceProvisioningStateSucceeded - Resource has been created. + ResourceProvisioningStateSucceeded ResourceProvisioningState = "Succeeded" +) + +// PossibleResourceProvisioningStateValues returns the possible values for the ResourceProvisioningState const type. +func PossibleResourceProvisioningStateValues() []ResourceProvisioningState { + return []ResourceProvisioningState{ + ResourceProvisioningStateCanceled, + ResourceProvisioningStateFailed, + ResourceProvisioningStateSucceeded, + } +} + +// RoleType - Role type enum. +type RoleType string + +const ( + // RoleTypeBackupCopy - BackupCopy role + RoleTypeBackupCopy RoleType = "BackupCopy" + // RoleTypeDisabledStandby - DisabledStandby role + RoleTypeDisabledStandby RoleType = "DisabledStandby" + // RoleTypePrimary - Primary role + RoleTypePrimary RoleType = "Primary" + // RoleTypeSnapshotStandby - SnapshotStandby role + RoleTypeSnapshotStandby RoleType = "SnapshotStandby" + // RoleTypeStandby - Standby role + RoleTypeStandby RoleType = "Standby" +) + +// PossibleRoleTypeValues returns the possible values for the RoleType const type. +func PossibleRoleTypeValues() []RoleType { + return []RoleType{ + RoleTypeBackupCopy, + RoleTypeDisabledStandby, + RoleTypePrimary, + RoleTypeSnapshotStandby, + RoleTypeStandby, + } +} + +// SessionModeType - Session mode type enum. +type SessionModeType string + +const ( + // SessionModeTypeDirect - Direct session mode + SessionModeTypeDirect SessionModeType = "Direct" + // SessionModeTypeRedirect - Redirect session mode + SessionModeTypeRedirect SessionModeType = "Redirect" +) + +// PossibleSessionModeTypeValues returns the possible values for the SessionModeType const type. +func PossibleSessionModeTypeValues() []SessionModeType { + return []SessionModeType{ + SessionModeTypeDirect, + SessionModeTypeRedirect, + } +} + +// ShapeFamily - Allowed values for GI Minor Versions shapeFamily filter +type ShapeFamily string + +const ( + // ShapeFamilyExadata - Family value for Exadata Shape + ShapeFamilyExadata ShapeFamily = "EXADATA" + // ShapeFamilyExadbXs - Family value for Exadb XS Shape + ShapeFamilyExadbXs ShapeFamily = "EXADB_XS" +) + +// PossibleShapeFamilyValues returns the possible values for the ShapeFamily const type. +func PossibleShapeFamilyValues() []ShapeFamily { + return []ShapeFamily{ + ShapeFamilyExadata, + ShapeFamilyExadbXs, + } +} + +// SourceType - Source type enum. +type SourceType string + +const ( + // SourceTypeBackupFromID - Backup from ID source + SourceTypeBackupFromID SourceType = "BackupFromId" + // SourceTypeBackupFromTimestamp - Backup from timestamp source + SourceTypeBackupFromTimestamp SourceType = "BackupFromTimestamp" + // SourceTypeCloneToRefreshable - Clone to refreshable source + SourceTypeCloneToRefreshable SourceType = "CloneToRefreshable" + // SourceTypeCrossRegionDataguard - Cross region dataguard source + SourceTypeCrossRegionDataguard SourceType = "CrossRegionDataguard" + // SourceTypeCrossRegionDisasterRecovery - cross region disaster recovery source + SourceTypeCrossRegionDisasterRecovery SourceType = "CrossRegionDisasterRecovery" + // SourceTypeDatabase - Database source + SourceTypeDatabase SourceType = "Database" + // SourceTypeNone - None source + SourceTypeNone SourceType = "None" +) + +// PossibleSourceTypeValues returns the possible values for the SourceType const type. +func PossibleSourceTypeValues() []SourceType { + return []SourceType{ + SourceTypeBackupFromID, + SourceTypeBackupFromTimestamp, + SourceTypeCloneToRefreshable, + SourceTypeCrossRegionDataguard, + SourceTypeCrossRegionDisasterRecovery, + SourceTypeDatabase, + SourceTypeNone, + } +} + +// SyntaxFormatType - Syntax format type enum. +type SyntaxFormatType string + +const ( + // SyntaxFormatTypeEzconnect - Ezconnect format + SyntaxFormatTypeEzconnect SyntaxFormatType = "Ezconnect" + // SyntaxFormatTypeEzconnectplus - Ezconnectplus format + SyntaxFormatTypeEzconnectplus SyntaxFormatType = "Ezconnectplus" + // SyntaxFormatTypeLong - Long format + SyntaxFormatTypeLong SyntaxFormatType = "Long" +) + +// PossibleSyntaxFormatTypeValues returns the possible values for the SyntaxFormatType const type. +func PossibleSyntaxFormatTypeValues() []SyntaxFormatType { + return []SyntaxFormatType{ + SyntaxFormatTypeEzconnect, + SyntaxFormatTypeEzconnectplus, + SyntaxFormatTypeLong, + } +} + +// SystemShapes - Allowed values for System Shapes +type SystemShapes string + +const ( + // SystemShapesExaDbXs - Exadata DB on Exascale Infrastructure shape + SystemShapesExaDbXs SystemShapes = "ExaDbXS" + // SystemShapesExadataX11M - Exadata X11M shape + SystemShapesExadataX11M SystemShapes = "Exadata.X11M" + // SystemShapesExadataX9M - Exadata X9M shape + SystemShapesExadataX9M SystemShapes = "Exadata.X9M" +) + +// PossibleSystemShapesValues returns the possible values for the SystemShapes const type. +func PossibleSystemShapesValues() []SystemShapes { + return []SystemShapes{ + SystemShapesExaDbXs, + SystemShapesExadataX11M, + SystemShapesExadataX9M, + } +} + +// TLSAuthenticationType - TLS authentication type enum. +type TLSAuthenticationType string + +const ( + // TLSAuthenticationTypeMutual - Mutual TLS + TLSAuthenticationTypeMutual TLSAuthenticationType = "Mutual" + // TLSAuthenticationTypeServer - Server authentication + TLSAuthenticationTypeServer TLSAuthenticationType = "Server" +) + +// PossibleTLSAuthenticationTypeValues returns the possible values for the TLSAuthenticationType const type. +func PossibleTLSAuthenticationTypeValues() []TLSAuthenticationType { + return []TLSAuthenticationType{ + TLSAuthenticationTypeMutual, + TLSAuthenticationTypeServer, + } +} + +// VirtualNetworkAddressLifecycleState - VirtualNetworkAddressLifecycleState enum +type VirtualNetworkAddressLifecycleState string + +const ( + // VirtualNetworkAddressLifecycleStateAvailable - Indicates that resource in Available state + VirtualNetworkAddressLifecycleStateAvailable VirtualNetworkAddressLifecycleState = "Available" + // VirtualNetworkAddressLifecycleStateFailed - Indicates that resource in Failed state + VirtualNetworkAddressLifecycleStateFailed VirtualNetworkAddressLifecycleState = "Failed" + // VirtualNetworkAddressLifecycleStateProvisioning - Indicates that resource in Provisioning state + VirtualNetworkAddressLifecycleStateProvisioning VirtualNetworkAddressLifecycleState = "Provisioning" + // VirtualNetworkAddressLifecycleStateTerminated - Indicates that resource in Terminated state + VirtualNetworkAddressLifecycleStateTerminated VirtualNetworkAddressLifecycleState = "Terminated" + // VirtualNetworkAddressLifecycleStateTerminating - Indicates that resource in Terminating state + VirtualNetworkAddressLifecycleStateTerminating VirtualNetworkAddressLifecycleState = "Terminating" +) + +// PossibleVirtualNetworkAddressLifecycleStateValues returns the possible values for the VirtualNetworkAddressLifecycleState const type. +func PossibleVirtualNetworkAddressLifecycleStateValues() []VirtualNetworkAddressLifecycleState { + return []VirtualNetworkAddressLifecycleState{ + VirtualNetworkAddressLifecycleStateAvailable, + VirtualNetworkAddressLifecycleStateFailed, + VirtualNetworkAddressLifecycleStateProvisioning, + VirtualNetworkAddressLifecycleStateTerminated, + VirtualNetworkAddressLifecycleStateTerminating, + } +} + +// WorkloadType - WorkloadType enum +type WorkloadType string + +const ( + // WorkloadTypeAJD - AJD - indicates an Autonomous JSON Database + WorkloadTypeAJD WorkloadType = "AJD" + // WorkloadTypeAPEX - APEX - indicates an Autonomous Database with the Oracle APEX Application Development workload type. + WorkloadTypeAPEX WorkloadType = "APEX" + // WorkloadTypeDW - DW - indicates an Autonomous Data Warehouse database + WorkloadTypeDW WorkloadType = "DW" + // WorkloadTypeOLTP - OLTP - indicates an Autonomous Transaction Processing database + WorkloadTypeOLTP WorkloadType = "OLTP" +) + +// PossibleWorkloadTypeValues returns the possible values for the WorkloadType const type. +func PossibleWorkloadTypeValues() []WorkloadType { + return []WorkloadType{ + WorkloadTypeAJD, + WorkloadTypeAPEX, + WorkloadTypeDW, + WorkloadTypeOLTP, + } +} + +// ZoneType - Zone type enum +type ZoneType string + +const ( + // ZoneTypePrimary - Primary zone + ZoneTypePrimary ZoneType = "Primary" + // ZoneTypeSecondary - Secondary zone + ZoneTypeSecondary ZoneType = "Secondary" +) + +// PossibleZoneTypeValues returns the possible values for the ZoneType const type. +func PossibleZoneTypeValues() []ZoneType { + return []ZoneType{ + ZoneTypePrimary, + ZoneTypeSecondary, + } +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dbnodes_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dbnodes_client.go new file mode 100644 index 00000000..b769d694 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dbnodes_client.go @@ -0,0 +1,259 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// DbNodesClient contains the methods for the DbNodes group. +// Don't use this type directly, use NewDbNodesClient() instead. +type DbNodesClient struct { + internal *arm.Client + subscriptionID string +} + +// NewDbNodesClient creates a new instance of DbNodesClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewDbNodesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*DbNodesClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &DbNodesClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginAction - VM actions on DbNode of VM Cluster by the provided filter +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - dbnodeocid - DbNode OCID. +// - body - The content of the action request +// - options - DbNodesClientBeginActionOptions contains the optional parameters for the DbNodesClient.BeginAction method. +func (client *DbNodesClient) BeginAction(ctx context.Context, resourceGroupName string, cloudvmclustername string, dbnodeocid string, body DbNodeAction, options *DbNodesClientBeginActionOptions) (*runtime.Poller[DbNodesClientActionResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.action(ctx, resourceGroupName, cloudvmclustername, dbnodeocid, body, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[DbNodesClientActionResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[DbNodesClientActionResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Action - VM actions on DbNode of VM Cluster by the provided filter +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *DbNodesClient) action(ctx context.Context, resourceGroupName string, cloudvmclustername string, dbnodeocid string, body DbNodeAction, options *DbNodesClientBeginActionOptions) (*http.Response, error) { + var err error + const operationName = "DbNodesClient.BeginAction" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.actionCreateRequest(ctx, resourceGroupName, cloudvmclustername, dbnodeocid, body, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// actionCreateRequest creates the Action request. +func (client *DbNodesClient) actionCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, dbnodeocid string, body DbNodeAction, _ *DbNodesClientBeginActionOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/dbNodes/{dbnodeocid}/action" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + if dbnodeocid == "" { + return nil, errors.New("parameter dbnodeocid cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{dbnodeocid}", url.PathEscape(dbnodeocid)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// Get - Get a DbNode +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - dbnodeocid - DbNode OCID. +// - options - DbNodesClientGetOptions contains the optional parameters for the DbNodesClient.Get method. +func (client *DbNodesClient) Get(ctx context.Context, resourceGroupName string, cloudvmclustername string, dbnodeocid string, options *DbNodesClientGetOptions) (DbNodesClientGetResponse, error) { + var err error + const operationName = "DbNodesClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, cloudvmclustername, dbnodeocid, options) + if err != nil { + return DbNodesClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return DbNodesClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return DbNodesClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *DbNodesClient) getCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, dbnodeocid string, _ *DbNodesClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/dbNodes/{dbnodeocid}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + if dbnodeocid == "" { + return nil, errors.New("parameter dbnodeocid cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{dbnodeocid}", url.PathEscape(dbnodeocid)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *DbNodesClient) getHandleResponse(resp *http.Response) (DbNodesClientGetResponse, error) { + result := DbNodesClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DbNode); err != nil { + return DbNodesClientGetResponse{}, err + } + return result, nil +} + +// NewListByCloudVMClusterPager - List DbNode resources by CloudVmCluster +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - options - DbNodesClientListByCloudVMClusterOptions contains the optional parameters for the DbNodesClient.NewListByCloudVMClusterPager +// method. +func (client *DbNodesClient) NewListByCloudVMClusterPager(resourceGroupName string, cloudvmclustername string, options *DbNodesClientListByCloudVMClusterOptions) *runtime.Pager[DbNodesClientListByCloudVMClusterResponse] { + return runtime.NewPager(runtime.PagingHandler[DbNodesClientListByCloudVMClusterResponse]{ + More: func(page DbNodesClientListByCloudVMClusterResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *DbNodesClientListByCloudVMClusterResponse) (DbNodesClientListByCloudVMClusterResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "DbNodesClient.NewListByCloudVMClusterPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByCloudVMClusterCreateRequest(ctx, resourceGroupName, cloudvmclustername, options) + }, nil) + if err != nil { + return DbNodesClientListByCloudVMClusterResponse{}, err + } + return client.listByCloudVMClusterHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByCloudVMClusterCreateRequest creates the ListByCloudVMCluster request. +func (client *DbNodesClient) listByCloudVMClusterCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, _ *DbNodesClientListByCloudVMClusterOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/dbNodes" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByCloudVMClusterHandleResponse handles the ListByCloudVMCluster response. +func (client *DbNodesClient) listByCloudVMClusterHandleResponse(resp *http.Response) (DbNodesClientListByCloudVMClusterResponse, error) { + result := DbNodesClientListByCloudVMClusterResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DbNodeListResult); err != nil { + return DbNodesClientListByCloudVMClusterResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dbservers_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dbservers_client.go new file mode 100644 index 00000000..d26c41e4 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dbservers_client.go @@ -0,0 +1,174 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// DbServersClient contains the methods for the DbServers group. +// Don't use this type directly, use NewDbServersClient() instead. +type DbServersClient struct { + internal *arm.Client + subscriptionID string +} + +// NewDbServersClient creates a new instance of DbServersClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewDbServersClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*DbServersClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &DbServersClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a DbServer +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudexadatainfrastructurename - CloudExadataInfrastructure name +// - dbserverocid - DbServer OCID. +// - options - DbServersClientGetOptions contains the optional parameters for the DbServersClient.Get method. +func (client *DbServersClient) Get(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, dbserverocid string, options *DbServersClientGetOptions) (DbServersClientGetResponse, error) { + var err error + const operationName = "DbServersClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, cloudexadatainfrastructurename, dbserverocid, options) + if err != nil { + return DbServersClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return DbServersClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return DbServersClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *DbServersClient) getCreateRequest(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, dbserverocid string, _ *DbServersClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudExadataInfrastructures/{cloudexadatainfrastructurename}/dbServers/{dbserverocid}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudexadatainfrastructurename == "" { + return nil, errors.New("parameter cloudexadatainfrastructurename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudexadatainfrastructurename}", url.PathEscape(cloudexadatainfrastructurename)) + if dbserverocid == "" { + return nil, errors.New("parameter dbserverocid cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{dbserverocid}", url.PathEscape(dbserverocid)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *DbServersClient) getHandleResponse(resp *http.Response) (DbServersClientGetResponse, error) { + result := DbServersClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DbServer); err != nil { + return DbServersClientGetResponse{}, err + } + return result, nil +} + +// NewListByCloudExadataInfrastructurePager - List DbServer resources by CloudExadataInfrastructure +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudexadatainfrastructurename - CloudExadataInfrastructure name +// - options - DbServersClientListByCloudExadataInfrastructureOptions contains the optional parameters for the DbServersClient.NewListByCloudExadataInfrastructurePager +// method. +func (client *DbServersClient) NewListByCloudExadataInfrastructurePager(resourceGroupName string, cloudexadatainfrastructurename string, options *DbServersClientListByCloudExadataInfrastructureOptions) *runtime.Pager[DbServersClientListByCloudExadataInfrastructureResponse] { + return runtime.NewPager(runtime.PagingHandler[DbServersClientListByCloudExadataInfrastructureResponse]{ + More: func(page DbServersClientListByCloudExadataInfrastructureResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *DbServersClientListByCloudExadataInfrastructureResponse) (DbServersClientListByCloudExadataInfrastructureResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "DbServersClient.NewListByCloudExadataInfrastructurePager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByCloudExadataInfrastructureCreateRequest(ctx, resourceGroupName, cloudexadatainfrastructurename, options) + }, nil) + if err != nil { + return DbServersClientListByCloudExadataInfrastructureResponse{}, err + } + return client.listByCloudExadataInfrastructureHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByCloudExadataInfrastructureCreateRequest creates the ListByCloudExadataInfrastructure request. +func (client *DbServersClient) listByCloudExadataInfrastructureCreateRequest(ctx context.Context, resourceGroupName string, cloudexadatainfrastructurename string, _ *DbServersClientListByCloudExadataInfrastructureOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudExadataInfrastructures/{cloudexadatainfrastructurename}/dbServers" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudexadatainfrastructurename == "" { + return nil, errors.New("parameter cloudexadatainfrastructurename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudexadatainfrastructurename}", url.PathEscape(cloudexadatainfrastructurename)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByCloudExadataInfrastructureHandleResponse handles the ListByCloudExadataInfrastructure response. +func (client *DbServersClient) listByCloudExadataInfrastructureHandleResponse(resp *http.Response) (DbServersClientListByCloudExadataInfrastructureResponse, error) { + result := DbServersClientListByCloudExadataInfrastructureResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DbServerListResult); err != nil { + return DbServersClientListByCloudExadataInfrastructureResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dbsystemshapes_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dbsystemshapes_client.go new file mode 100644 index 00000000..f278455d --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dbsystemshapes_client.go @@ -0,0 +1,167 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// DbSystemShapesClient contains the methods for the DbSystemShapes group. +// Don't use this type directly, use NewDbSystemShapesClient() instead. +type DbSystemShapesClient struct { + internal *arm.Client + subscriptionID string +} + +// NewDbSystemShapesClient creates a new instance of DbSystemShapesClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewDbSystemShapesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*DbSystemShapesClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &DbSystemShapesClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a DbSystemShape +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - dbsystemshapename - DbSystemShape name +// - options - DbSystemShapesClientGetOptions contains the optional parameters for the DbSystemShapesClient.Get method. +func (client *DbSystemShapesClient) Get(ctx context.Context, location string, dbsystemshapename string, options *DbSystemShapesClientGetOptions) (DbSystemShapesClientGetResponse, error) { + var err error + const operationName = "DbSystemShapesClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, dbsystemshapename, options) + if err != nil { + return DbSystemShapesClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return DbSystemShapesClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return DbSystemShapesClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *DbSystemShapesClient) getCreateRequest(ctx context.Context, location string, dbsystemshapename string, _ *DbSystemShapesClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/dbSystemShapes/{dbsystemshapename}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if dbsystemshapename == "" { + return nil, errors.New("parameter dbsystemshapename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{dbsystemshapename}", url.PathEscape(dbsystemshapename)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *DbSystemShapesClient) getHandleResponse(resp *http.Response) (DbSystemShapesClientGetResponse, error) { + result := DbSystemShapesClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DbSystemShape); err != nil { + return DbSystemShapesClientGetResponse{}, err + } + return result, nil +} + +// NewListByLocationPager - List DbSystemShape resources by SubscriptionLocationResource +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - options - DbSystemShapesClientListByLocationOptions contains the optional parameters for the DbSystemShapesClient.NewListByLocationPager +// method. +func (client *DbSystemShapesClient) NewListByLocationPager(location string, options *DbSystemShapesClientListByLocationOptions) *runtime.Pager[DbSystemShapesClientListByLocationResponse] { + return runtime.NewPager(runtime.PagingHandler[DbSystemShapesClientListByLocationResponse]{ + More: func(page DbSystemShapesClientListByLocationResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *DbSystemShapesClientListByLocationResponse) (DbSystemShapesClientListByLocationResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "DbSystemShapesClient.NewListByLocationPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByLocationCreateRequest(ctx, location, options) + }, nil) + if err != nil { + return DbSystemShapesClientListByLocationResponse{}, err + } + return client.listByLocationHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByLocationCreateRequest creates the ListByLocation request. +func (client *DbSystemShapesClient) listByLocationCreateRequest(ctx context.Context, location string, options *DbSystemShapesClientListByLocationOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/dbSystemShapes" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + if options != nil && options.Zone != nil { + reqQP.Set("zone", *options.Zone) + } + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByLocationHandleResponse handles the ListByLocation response. +func (client *DbSystemShapesClient) listByLocationHandleResponse(resp *http.Response) (DbSystemShapesClientListByLocationResponse, error) { + result := DbSystemShapesClientListByLocationResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DbSystemShapeListResult); err != nil { + return DbSystemShapesClientListByLocationResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dnsprivateviews_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dnsprivateviews_client.go new file mode 100644 index 00000000..03fbe7ec --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dnsprivateviews_client.go @@ -0,0 +1,164 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// DNSPrivateViewsClient contains the methods for the DNSPrivateViews group. +// Don't use this type directly, use NewDNSPrivateViewsClient() instead. +type DNSPrivateViewsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewDNSPrivateViewsClient creates a new instance of DNSPrivateViewsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewDNSPrivateViewsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*DNSPrivateViewsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &DNSPrivateViewsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a DnsPrivateView +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - dnsprivateviewocid - DnsPrivateView OCID +// - options - DNSPrivateViewsClientGetOptions contains the optional parameters for the DNSPrivateViewsClient.Get method. +func (client *DNSPrivateViewsClient) Get(ctx context.Context, location string, dnsprivateviewocid string, options *DNSPrivateViewsClientGetOptions) (DNSPrivateViewsClientGetResponse, error) { + var err error + const operationName = "DNSPrivateViewsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, dnsprivateviewocid, options) + if err != nil { + return DNSPrivateViewsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return DNSPrivateViewsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return DNSPrivateViewsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *DNSPrivateViewsClient) getCreateRequest(ctx context.Context, location string, dnsprivateviewocid string, _ *DNSPrivateViewsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/dnsPrivateViews/{dnsprivateviewocid}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if dnsprivateviewocid == "" { + return nil, errors.New("parameter dnsprivateviewocid cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{dnsprivateviewocid}", url.PathEscape(dnsprivateviewocid)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *DNSPrivateViewsClient) getHandleResponse(resp *http.Response) (DNSPrivateViewsClientGetResponse, error) { + result := DNSPrivateViewsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DNSPrivateView); err != nil { + return DNSPrivateViewsClientGetResponse{}, err + } + return result, nil +} + +// NewListByLocationPager - List DnsPrivateView resources by SubscriptionLocationResource +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - options - DNSPrivateViewsClientListByLocationOptions contains the optional parameters for the DNSPrivateViewsClient.NewListByLocationPager +// method. +func (client *DNSPrivateViewsClient) NewListByLocationPager(location string, options *DNSPrivateViewsClientListByLocationOptions) *runtime.Pager[DNSPrivateViewsClientListByLocationResponse] { + return runtime.NewPager(runtime.PagingHandler[DNSPrivateViewsClientListByLocationResponse]{ + More: func(page DNSPrivateViewsClientListByLocationResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *DNSPrivateViewsClientListByLocationResponse) (DNSPrivateViewsClientListByLocationResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "DNSPrivateViewsClient.NewListByLocationPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByLocationCreateRequest(ctx, location, options) + }, nil) + if err != nil { + return DNSPrivateViewsClientListByLocationResponse{}, err + } + return client.listByLocationHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByLocationCreateRequest creates the ListByLocation request. +func (client *DNSPrivateViewsClient) listByLocationCreateRequest(ctx context.Context, location string, _ *DNSPrivateViewsClientListByLocationOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/dnsPrivateViews" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByLocationHandleResponse handles the ListByLocation response. +func (client *DNSPrivateViewsClient) listByLocationHandleResponse(resp *http.Response) (DNSPrivateViewsClientListByLocationResponse, error) { + result := DNSPrivateViewsClientListByLocationResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DNSPrivateViewListResult); err != nil { + return DNSPrivateViewsClientListByLocationResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dnsprivatezones_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dnsprivatezones_client.go new file mode 100644 index 00000000..1e3d217d --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/dnsprivatezones_client.go @@ -0,0 +1,164 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// DNSPrivateZonesClient contains the methods for the DNSPrivateZones group. +// Don't use this type directly, use NewDNSPrivateZonesClient() instead. +type DNSPrivateZonesClient struct { + internal *arm.Client + subscriptionID string +} + +// NewDNSPrivateZonesClient creates a new instance of DNSPrivateZonesClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewDNSPrivateZonesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*DNSPrivateZonesClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &DNSPrivateZonesClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a DnsPrivateZone +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - dnsprivatezonename - DnsPrivateZone name +// - options - DNSPrivateZonesClientGetOptions contains the optional parameters for the DNSPrivateZonesClient.Get method. +func (client *DNSPrivateZonesClient) Get(ctx context.Context, location string, dnsprivatezonename string, options *DNSPrivateZonesClientGetOptions) (DNSPrivateZonesClientGetResponse, error) { + var err error + const operationName = "DNSPrivateZonesClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, dnsprivatezonename, options) + if err != nil { + return DNSPrivateZonesClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return DNSPrivateZonesClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return DNSPrivateZonesClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *DNSPrivateZonesClient) getCreateRequest(ctx context.Context, location string, dnsprivatezonename string, _ *DNSPrivateZonesClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/dnsPrivateZones/{dnsprivatezonename}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if dnsprivatezonename == "" { + return nil, errors.New("parameter dnsprivatezonename cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{dnsprivatezonename}", url.PathEscape(dnsprivatezonename)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *DNSPrivateZonesClient) getHandleResponse(resp *http.Response) (DNSPrivateZonesClientGetResponse, error) { + result := DNSPrivateZonesClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DNSPrivateZone); err != nil { + return DNSPrivateZonesClientGetResponse{}, err + } + return result, nil +} + +// NewListByLocationPager - List DnsPrivateZone resources by SubscriptionLocationResource +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - options - DNSPrivateZonesClientListByLocationOptions contains the optional parameters for the DNSPrivateZonesClient.NewListByLocationPager +// method. +func (client *DNSPrivateZonesClient) NewListByLocationPager(location string, options *DNSPrivateZonesClientListByLocationOptions) *runtime.Pager[DNSPrivateZonesClientListByLocationResponse] { + return runtime.NewPager(runtime.PagingHandler[DNSPrivateZonesClientListByLocationResponse]{ + More: func(page DNSPrivateZonesClientListByLocationResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *DNSPrivateZonesClientListByLocationResponse) (DNSPrivateZonesClientListByLocationResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "DNSPrivateZonesClient.NewListByLocationPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByLocationCreateRequest(ctx, location, options) + }, nil) + if err != nil { + return DNSPrivateZonesClientListByLocationResponse{}, err + } + return client.listByLocationHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByLocationCreateRequest creates the ListByLocation request. +func (client *DNSPrivateZonesClient) listByLocationCreateRequest(ctx context.Context, location string, _ *DNSPrivateZonesClientListByLocationOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/dnsPrivateZones" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByLocationHandleResponse handles the ListByLocation response. +func (client *DNSPrivateZonesClient) listByLocationHandleResponse(resp *http.Response) (DNSPrivateZonesClientListByLocationResponse, error) { + result := DNSPrivateZonesClientListByLocationResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DNSPrivateZoneListResult); err != nil { + return DNSPrivateZonesClientListByLocationResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/exadbvmclusters_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/exadbvmclusters_client.go new file mode 100644 index 00000000..6c94bfd4 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/exadbvmclusters_client.go @@ -0,0 +1,538 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// ExadbVMClustersClient contains the methods for the ExadbVMClusters group. +// Don't use this type directly, use NewExadbVMClustersClient() instead. +type ExadbVMClustersClient struct { + internal *arm.Client + subscriptionID string +} + +// NewExadbVMClustersClient creates a new instance of ExadbVMClustersClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewExadbVMClustersClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ExadbVMClustersClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &ExadbVMClustersClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginCreateOrUpdate - Create a ExadbVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exadbVMClusterName - The name of the ExadbVmCluster +// - resource - Resource create parameters. +// - options - ExadbVMClustersClientBeginCreateOrUpdateOptions contains the optional parameters for the ExadbVMClustersClient.BeginCreateOrUpdate +// method. +func (client *ExadbVMClustersClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, exadbVMClusterName string, resource ExadbVMCluster, options *ExadbVMClustersClientBeginCreateOrUpdateOptions) (*runtime.Poller[ExadbVMClustersClientCreateOrUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.createOrUpdate(ctx, resourceGroupName, exadbVMClusterName, resource, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ExadbVMClustersClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ExadbVMClustersClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// CreateOrUpdate - Create a ExadbVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *ExadbVMClustersClient) createOrUpdate(ctx context.Context, resourceGroupName string, exadbVMClusterName string, resource ExadbVMCluster, options *ExadbVMClustersClientBeginCreateOrUpdateOptions) (*http.Response, error) { + var err error + const operationName = "ExadbVMClustersClient.BeginCreateOrUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, exadbVMClusterName, resource, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// createOrUpdateCreateRequest creates the CreateOrUpdate request. +func (client *ExadbVMClustersClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, exadbVMClusterName string, resource ExadbVMCluster, _ *ExadbVMClustersClientBeginCreateOrUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exadbVmClusters/{exadbVmClusterName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exadbVMClusterName == "" { + return nil, errors.New("parameter exadbVMClusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exadbVmClusterName}", url.PathEscape(exadbVMClusterName)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, resource); err != nil { + return nil, err + } + return req, nil +} + +// BeginDelete - Delete a ExadbVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exadbVMClusterName - The name of the ExadbVmCluster +// - options - ExadbVMClustersClientBeginDeleteOptions contains the optional parameters for the ExadbVMClustersClient.BeginDelete +// method. +func (client *ExadbVMClustersClient) BeginDelete(ctx context.Context, resourceGroupName string, exadbVMClusterName string, options *ExadbVMClustersClientBeginDeleteOptions) (*runtime.Poller[ExadbVMClustersClientDeleteResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.deleteOperation(ctx, resourceGroupName, exadbVMClusterName, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ExadbVMClustersClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ExadbVMClustersClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Delete - Delete a ExadbVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *ExadbVMClustersClient) deleteOperation(ctx context.Context, resourceGroupName string, exadbVMClusterName string, options *ExadbVMClustersClientBeginDeleteOptions) (*http.Response, error) { + var err error + const operationName = "ExadbVMClustersClient.BeginDelete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, resourceGroupName, exadbVMClusterName, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusAccepted, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *ExadbVMClustersClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, exadbVMClusterName string, _ *ExadbVMClustersClientBeginDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exadbVmClusters/{exadbVmClusterName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exadbVMClusterName == "" { + return nil, errors.New("parameter exadbVMClusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exadbVmClusterName}", url.PathEscape(exadbVMClusterName)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// Get - Get a ExadbVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exadbVMClusterName - The name of the ExadbVmCluster +// - options - ExadbVMClustersClientGetOptions contains the optional parameters for the ExadbVMClustersClient.Get method. +func (client *ExadbVMClustersClient) Get(ctx context.Context, resourceGroupName string, exadbVMClusterName string, options *ExadbVMClustersClientGetOptions) (ExadbVMClustersClientGetResponse, error) { + var err error + const operationName = "ExadbVMClustersClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, exadbVMClusterName, options) + if err != nil { + return ExadbVMClustersClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return ExadbVMClustersClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return ExadbVMClustersClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *ExadbVMClustersClient) getCreateRequest(ctx context.Context, resourceGroupName string, exadbVMClusterName string, _ *ExadbVMClustersClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exadbVmClusters/{exadbVmClusterName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exadbVMClusterName == "" { + return nil, errors.New("parameter exadbVMClusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exadbVmClusterName}", url.PathEscape(exadbVMClusterName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *ExadbVMClustersClient) getHandleResponse(resp *http.Response) (ExadbVMClustersClientGetResponse, error) { + result := ExadbVMClustersClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.ExadbVMCluster); err != nil { + return ExadbVMClustersClientGetResponse{}, err + } + return result, nil +} + +// NewListByResourceGroupPager - List ExadbVmCluster resources by resource group +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - options - ExadbVMClustersClientListByResourceGroupOptions contains the optional parameters for the ExadbVMClustersClient.NewListByResourceGroupPager +// method. +func (client *ExadbVMClustersClient) NewListByResourceGroupPager(resourceGroupName string, options *ExadbVMClustersClientListByResourceGroupOptions) *runtime.Pager[ExadbVMClustersClientListByResourceGroupResponse] { + return runtime.NewPager(runtime.PagingHandler[ExadbVMClustersClientListByResourceGroupResponse]{ + More: func(page ExadbVMClustersClientListByResourceGroupResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *ExadbVMClustersClientListByResourceGroupResponse) (ExadbVMClustersClientListByResourceGroupResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "ExadbVMClustersClient.NewListByResourceGroupPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByResourceGroupCreateRequest(ctx, resourceGroupName, options) + }, nil) + if err != nil { + return ExadbVMClustersClientListByResourceGroupResponse{}, err + } + return client.listByResourceGroupHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByResourceGroupCreateRequest creates the ListByResourceGroup request. +func (client *ExadbVMClustersClient) listByResourceGroupCreateRequest(ctx context.Context, resourceGroupName string, _ *ExadbVMClustersClientListByResourceGroupOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exadbVmClusters" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByResourceGroupHandleResponse handles the ListByResourceGroup response. +func (client *ExadbVMClustersClient) listByResourceGroupHandleResponse(resp *http.Response) (ExadbVMClustersClientListByResourceGroupResponse, error) { + result := ExadbVMClustersClientListByResourceGroupResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.ExadbVMClusterListResult); err != nil { + return ExadbVMClustersClientListByResourceGroupResponse{}, err + } + return result, nil +} + +// NewListBySubscriptionPager - List ExadbVmCluster resources by subscription ID +// +// Generated from API version 2025-03-01 +// - options - ExadbVMClustersClientListBySubscriptionOptions contains the optional parameters for the ExadbVMClustersClient.NewListBySubscriptionPager +// method. +func (client *ExadbVMClustersClient) NewListBySubscriptionPager(options *ExadbVMClustersClientListBySubscriptionOptions) *runtime.Pager[ExadbVMClustersClientListBySubscriptionResponse] { + return runtime.NewPager(runtime.PagingHandler[ExadbVMClustersClientListBySubscriptionResponse]{ + More: func(page ExadbVMClustersClientListBySubscriptionResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *ExadbVMClustersClientListBySubscriptionResponse) (ExadbVMClustersClientListBySubscriptionResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "ExadbVMClustersClient.NewListBySubscriptionPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listBySubscriptionCreateRequest(ctx, options) + }, nil) + if err != nil { + return ExadbVMClustersClientListBySubscriptionResponse{}, err + } + return client.listBySubscriptionHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listBySubscriptionCreateRequest creates the ListBySubscription request. +func (client *ExadbVMClustersClient) listBySubscriptionCreateRequest(ctx context.Context, _ *ExadbVMClustersClientListBySubscriptionOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/exadbVmClusters" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listBySubscriptionHandleResponse handles the ListBySubscription response. +func (client *ExadbVMClustersClient) listBySubscriptionHandleResponse(resp *http.Response) (ExadbVMClustersClientListBySubscriptionResponse, error) { + result := ExadbVMClustersClientListBySubscriptionResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.ExadbVMClusterListResult); err != nil { + return ExadbVMClustersClientListBySubscriptionResponse{}, err + } + return result, nil +} + +// BeginRemoveVMs - Remove VMs from the VM Cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exadbVMClusterName - The name of the ExadbVmCluster +// - body - The content of the action request +// - options - ExadbVMClustersClientBeginRemoveVMsOptions contains the optional parameters for the ExadbVMClustersClient.BeginRemoveVMs +// method. +func (client *ExadbVMClustersClient) BeginRemoveVMs(ctx context.Context, resourceGroupName string, exadbVMClusterName string, body RemoveVirtualMachineFromExadbVMClusterDetails, options *ExadbVMClustersClientBeginRemoveVMsOptions) (*runtime.Poller[ExadbVMClustersClientRemoveVMsResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.removeVMs(ctx, resourceGroupName, exadbVMClusterName, body, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ExadbVMClustersClientRemoveVMsResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ExadbVMClustersClientRemoveVMsResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// RemoveVMs - Remove VMs from the VM Cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *ExadbVMClustersClient) removeVMs(ctx context.Context, resourceGroupName string, exadbVMClusterName string, body RemoveVirtualMachineFromExadbVMClusterDetails, options *ExadbVMClustersClientBeginRemoveVMsOptions) (*http.Response, error) { + var err error + const operationName = "ExadbVMClustersClient.BeginRemoveVMs" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.removeVMsCreateRequest(ctx, resourceGroupName, exadbVMClusterName, body, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// removeVMsCreateRequest creates the RemoveVMs request. +func (client *ExadbVMClustersClient) removeVMsCreateRequest(ctx context.Context, resourceGroupName string, exadbVMClusterName string, body RemoveVirtualMachineFromExadbVMClusterDetails, _ *ExadbVMClustersClientBeginRemoveVMsOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exadbVmClusters/{exadbVmClusterName}/removeVms" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exadbVMClusterName == "" { + return nil, errors.New("parameter exadbVMClusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exadbVmClusterName}", url.PathEscape(exadbVMClusterName)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// BeginUpdate - Update a ExadbVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exadbVMClusterName - The name of the ExadbVmCluster +// - properties - The resource properties to be updated. +// - options - ExadbVMClustersClientBeginUpdateOptions contains the optional parameters for the ExadbVMClustersClient.BeginUpdate +// method. +func (client *ExadbVMClustersClient) BeginUpdate(ctx context.Context, resourceGroupName string, exadbVMClusterName string, properties ExadbVMClusterUpdate, options *ExadbVMClustersClientBeginUpdateOptions) (*runtime.Poller[ExadbVMClustersClientUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.update(ctx, resourceGroupName, exadbVMClusterName, properties, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ExadbVMClustersClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ExadbVMClustersClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Update - Update a ExadbVmCluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *ExadbVMClustersClient) update(ctx context.Context, resourceGroupName string, exadbVMClusterName string, properties ExadbVMClusterUpdate, options *ExadbVMClustersClientBeginUpdateOptions) (*http.Response, error) { + var err error + const operationName = "ExadbVMClustersClient.BeginUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.updateCreateRequest(ctx, resourceGroupName, exadbVMClusterName, properties, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// updateCreateRequest creates the Update request. +func (client *ExadbVMClustersClient) updateCreateRequest(ctx context.Context, resourceGroupName string, exadbVMClusterName string, properties ExadbVMClusterUpdate, _ *ExadbVMClustersClientBeginUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exadbVmClusters/{exadbVmClusterName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exadbVMClusterName == "" { + return nil, errors.New("parameter exadbVMClusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exadbVmClusterName}", url.PathEscape(exadbVMClusterName)) + req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, properties); err != nil { + return nil, err + } + return req, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/exascaledbnodes_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/exascaledbnodes_client.go new file mode 100644 index 00000000..f5537f5a --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/exascaledbnodes_client.go @@ -0,0 +1,260 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// ExascaleDbNodesClient contains the methods for the ExascaleDbNodes group. +// Don't use this type directly, use NewExascaleDbNodesClient() instead. +type ExascaleDbNodesClient struct { + internal *arm.Client + subscriptionID string +} + +// NewExascaleDbNodesClient creates a new instance of ExascaleDbNodesClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewExascaleDbNodesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ExascaleDbNodesClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &ExascaleDbNodesClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginAction - VM actions on DbNode of ExadbVmCluster by the provided filter +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exadbVMClusterName - The name of the ExadbVmCluster +// - exascaleDbNodeName - The name of the ExascaleDbNode +// - body - The content of the action request +// - options - ExascaleDbNodesClientBeginActionOptions contains the optional parameters for the ExascaleDbNodesClient.BeginAction +// method. +func (client *ExascaleDbNodesClient) BeginAction(ctx context.Context, resourceGroupName string, exadbVMClusterName string, exascaleDbNodeName string, body DbNodeAction, options *ExascaleDbNodesClientBeginActionOptions) (*runtime.Poller[ExascaleDbNodesClientActionResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.action(ctx, resourceGroupName, exadbVMClusterName, exascaleDbNodeName, body, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ExascaleDbNodesClientActionResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ExascaleDbNodesClientActionResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Action - VM actions on DbNode of ExadbVmCluster by the provided filter +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *ExascaleDbNodesClient) action(ctx context.Context, resourceGroupName string, exadbVMClusterName string, exascaleDbNodeName string, body DbNodeAction, options *ExascaleDbNodesClientBeginActionOptions) (*http.Response, error) { + var err error + const operationName = "ExascaleDbNodesClient.BeginAction" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.actionCreateRequest(ctx, resourceGroupName, exadbVMClusterName, exascaleDbNodeName, body, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// actionCreateRequest creates the Action request. +func (client *ExascaleDbNodesClient) actionCreateRequest(ctx context.Context, resourceGroupName string, exadbVMClusterName string, exascaleDbNodeName string, body DbNodeAction, _ *ExascaleDbNodesClientBeginActionOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exadbVmClusters/{exadbVmClusterName}/dbNodes/{exascaleDbNodeName}/action" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exadbVMClusterName == "" { + return nil, errors.New("parameter exadbVMClusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exadbVmClusterName}", url.PathEscape(exadbVMClusterName)) + if exascaleDbNodeName == "" { + return nil, errors.New("parameter exascaleDbNodeName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exascaleDbNodeName}", url.PathEscape(exascaleDbNodeName)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// Get - Get a ExascaleDbNode +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exadbVMClusterName - The name of the ExadbVmCluster +// - exascaleDbNodeName - The name of the ExascaleDbNode +// - options - ExascaleDbNodesClientGetOptions contains the optional parameters for the ExascaleDbNodesClient.Get method. +func (client *ExascaleDbNodesClient) Get(ctx context.Context, resourceGroupName string, exadbVMClusterName string, exascaleDbNodeName string, options *ExascaleDbNodesClientGetOptions) (ExascaleDbNodesClientGetResponse, error) { + var err error + const operationName = "ExascaleDbNodesClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, exadbVMClusterName, exascaleDbNodeName, options) + if err != nil { + return ExascaleDbNodesClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return ExascaleDbNodesClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return ExascaleDbNodesClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *ExascaleDbNodesClient) getCreateRequest(ctx context.Context, resourceGroupName string, exadbVMClusterName string, exascaleDbNodeName string, _ *ExascaleDbNodesClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exadbVmClusters/{exadbVmClusterName}/dbNodes/{exascaleDbNodeName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exadbVMClusterName == "" { + return nil, errors.New("parameter exadbVMClusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exadbVmClusterName}", url.PathEscape(exadbVMClusterName)) + if exascaleDbNodeName == "" { + return nil, errors.New("parameter exascaleDbNodeName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exascaleDbNodeName}", url.PathEscape(exascaleDbNodeName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *ExascaleDbNodesClient) getHandleResponse(resp *http.Response) (ExascaleDbNodesClientGetResponse, error) { + result := ExascaleDbNodesClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.ExascaleDbNode); err != nil { + return ExascaleDbNodesClientGetResponse{}, err + } + return result, nil +} + +// NewListByParentPager - List ExascaleDbNode resources by ExadbVmCluster +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exadbVMClusterName - The name of the ExadbVmCluster +// - options - ExascaleDbNodesClientListByParentOptions contains the optional parameters for the ExascaleDbNodesClient.NewListByParentPager +// method. +func (client *ExascaleDbNodesClient) NewListByParentPager(resourceGroupName string, exadbVMClusterName string, options *ExascaleDbNodesClientListByParentOptions) *runtime.Pager[ExascaleDbNodesClientListByParentResponse] { + return runtime.NewPager(runtime.PagingHandler[ExascaleDbNodesClientListByParentResponse]{ + More: func(page ExascaleDbNodesClientListByParentResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *ExascaleDbNodesClientListByParentResponse) (ExascaleDbNodesClientListByParentResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "ExascaleDbNodesClient.NewListByParentPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByParentCreateRequest(ctx, resourceGroupName, exadbVMClusterName, options) + }, nil) + if err != nil { + return ExascaleDbNodesClientListByParentResponse{}, err + } + return client.listByParentHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByParentCreateRequest creates the ListByParent request. +func (client *ExascaleDbNodesClient) listByParentCreateRequest(ctx context.Context, resourceGroupName string, exadbVMClusterName string, _ *ExascaleDbNodesClientListByParentOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exadbVmClusters/{exadbVmClusterName}/dbNodes" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exadbVMClusterName == "" { + return nil, errors.New("parameter exadbVMClusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exadbVmClusterName}", url.PathEscape(exadbVMClusterName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByParentHandleResponse handles the ListByParent response. +func (client *ExascaleDbNodesClient) listByParentHandleResponse(resp *http.Response) (ExascaleDbNodesClientListByParentResponse, error) { + result := ExascaleDbNodesClientListByParentResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.ExascaleDbNodeListResult); err != nil { + return ExascaleDbNodesClientListByParentResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/exascaledbstoragevaults_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/exascaledbstoragevaults_client.go new file mode 100644 index 00000000..45c3a186 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/exascaledbstoragevaults_client.go @@ -0,0 +1,458 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// ExascaleDbStorageVaultsClient contains the methods for the ExascaleDbStorageVaults group. +// Don't use this type directly, use NewExascaleDbStorageVaultsClient() instead. +type ExascaleDbStorageVaultsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewExascaleDbStorageVaultsClient creates a new instance of ExascaleDbStorageVaultsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewExascaleDbStorageVaultsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ExascaleDbStorageVaultsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &ExascaleDbStorageVaultsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginCreate - Create a ExascaleDbStorageVault +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exascaleDbStorageVaultName - The name of the ExascaleDbStorageVault +// - resource - Resource create parameters. +// - options - ExascaleDbStorageVaultsClientBeginCreateOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.BeginCreate +// method. +func (client *ExascaleDbStorageVaultsClient) BeginCreate(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, resource ExascaleDbStorageVault, options *ExascaleDbStorageVaultsClientBeginCreateOptions) (*runtime.Poller[ExascaleDbStorageVaultsClientCreateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.create(ctx, resourceGroupName, exascaleDbStorageVaultName, resource, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ExascaleDbStorageVaultsClientCreateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ExascaleDbStorageVaultsClientCreateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Create - Create a ExascaleDbStorageVault +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *ExascaleDbStorageVaultsClient) create(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, resource ExascaleDbStorageVault, options *ExascaleDbStorageVaultsClientBeginCreateOptions) (*http.Response, error) { + var err error + const operationName = "ExascaleDbStorageVaultsClient.BeginCreate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.createCreateRequest(ctx, resourceGroupName, exascaleDbStorageVaultName, resource, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// createCreateRequest creates the Create request. +func (client *ExascaleDbStorageVaultsClient) createCreateRequest(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, resource ExascaleDbStorageVault, _ *ExascaleDbStorageVaultsClientBeginCreateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exascaleDbStorageVaults/{exascaleDbStorageVaultName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exascaleDbStorageVaultName == "" { + return nil, errors.New("parameter exascaleDbStorageVaultName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exascaleDbStorageVaultName}", url.PathEscape(exascaleDbStorageVaultName)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, resource); err != nil { + return nil, err + } + return req, nil +} + +// BeginDelete - Delete a ExascaleDbStorageVault +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exascaleDbStorageVaultName - The name of the ExascaleDbStorageVault +// - options - ExascaleDbStorageVaultsClientBeginDeleteOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.BeginDelete +// method. +func (client *ExascaleDbStorageVaultsClient) BeginDelete(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, options *ExascaleDbStorageVaultsClientBeginDeleteOptions) (*runtime.Poller[ExascaleDbStorageVaultsClientDeleteResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.deleteOperation(ctx, resourceGroupName, exascaleDbStorageVaultName, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ExascaleDbStorageVaultsClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ExascaleDbStorageVaultsClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Delete - Delete a ExascaleDbStorageVault +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *ExascaleDbStorageVaultsClient) deleteOperation(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, options *ExascaleDbStorageVaultsClientBeginDeleteOptions) (*http.Response, error) { + var err error + const operationName = "ExascaleDbStorageVaultsClient.BeginDelete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, resourceGroupName, exascaleDbStorageVaultName, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusAccepted, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *ExascaleDbStorageVaultsClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, _ *ExascaleDbStorageVaultsClientBeginDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exascaleDbStorageVaults/{exascaleDbStorageVaultName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exascaleDbStorageVaultName == "" { + return nil, errors.New("parameter exascaleDbStorageVaultName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exascaleDbStorageVaultName}", url.PathEscape(exascaleDbStorageVaultName)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// Get - Get a ExascaleDbStorageVault +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exascaleDbStorageVaultName - The name of the ExascaleDbStorageVault +// - options - ExascaleDbStorageVaultsClientGetOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.Get +// method. +func (client *ExascaleDbStorageVaultsClient) Get(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, options *ExascaleDbStorageVaultsClientGetOptions) (ExascaleDbStorageVaultsClientGetResponse, error) { + var err error + const operationName = "ExascaleDbStorageVaultsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, exascaleDbStorageVaultName, options) + if err != nil { + return ExascaleDbStorageVaultsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return ExascaleDbStorageVaultsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return ExascaleDbStorageVaultsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *ExascaleDbStorageVaultsClient) getCreateRequest(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, _ *ExascaleDbStorageVaultsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exascaleDbStorageVaults/{exascaleDbStorageVaultName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exascaleDbStorageVaultName == "" { + return nil, errors.New("parameter exascaleDbStorageVaultName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exascaleDbStorageVaultName}", url.PathEscape(exascaleDbStorageVaultName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *ExascaleDbStorageVaultsClient) getHandleResponse(resp *http.Response) (ExascaleDbStorageVaultsClientGetResponse, error) { + result := ExascaleDbStorageVaultsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.ExascaleDbStorageVault); err != nil { + return ExascaleDbStorageVaultsClientGetResponse{}, err + } + return result, nil +} + +// NewListByResourceGroupPager - List ExascaleDbStorageVault resources by resource group +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - options - ExascaleDbStorageVaultsClientListByResourceGroupOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.NewListByResourceGroupPager +// method. +func (client *ExascaleDbStorageVaultsClient) NewListByResourceGroupPager(resourceGroupName string, options *ExascaleDbStorageVaultsClientListByResourceGroupOptions) *runtime.Pager[ExascaleDbStorageVaultsClientListByResourceGroupResponse] { + return runtime.NewPager(runtime.PagingHandler[ExascaleDbStorageVaultsClientListByResourceGroupResponse]{ + More: func(page ExascaleDbStorageVaultsClientListByResourceGroupResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *ExascaleDbStorageVaultsClientListByResourceGroupResponse) (ExascaleDbStorageVaultsClientListByResourceGroupResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "ExascaleDbStorageVaultsClient.NewListByResourceGroupPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByResourceGroupCreateRequest(ctx, resourceGroupName, options) + }, nil) + if err != nil { + return ExascaleDbStorageVaultsClientListByResourceGroupResponse{}, err + } + return client.listByResourceGroupHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByResourceGroupCreateRequest creates the ListByResourceGroup request. +func (client *ExascaleDbStorageVaultsClient) listByResourceGroupCreateRequest(ctx context.Context, resourceGroupName string, _ *ExascaleDbStorageVaultsClientListByResourceGroupOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exascaleDbStorageVaults" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByResourceGroupHandleResponse handles the ListByResourceGroup response. +func (client *ExascaleDbStorageVaultsClient) listByResourceGroupHandleResponse(resp *http.Response) (ExascaleDbStorageVaultsClientListByResourceGroupResponse, error) { + result := ExascaleDbStorageVaultsClientListByResourceGroupResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.ExascaleDbStorageVaultListResult); err != nil { + return ExascaleDbStorageVaultsClientListByResourceGroupResponse{}, err + } + return result, nil +} + +// NewListBySubscriptionPager - List ExascaleDbStorageVault resources by subscription ID +// +// Generated from API version 2025-03-01 +// - options - ExascaleDbStorageVaultsClientListBySubscriptionOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.NewListBySubscriptionPager +// method. +func (client *ExascaleDbStorageVaultsClient) NewListBySubscriptionPager(options *ExascaleDbStorageVaultsClientListBySubscriptionOptions) *runtime.Pager[ExascaleDbStorageVaultsClientListBySubscriptionResponse] { + return runtime.NewPager(runtime.PagingHandler[ExascaleDbStorageVaultsClientListBySubscriptionResponse]{ + More: func(page ExascaleDbStorageVaultsClientListBySubscriptionResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *ExascaleDbStorageVaultsClientListBySubscriptionResponse) (ExascaleDbStorageVaultsClientListBySubscriptionResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "ExascaleDbStorageVaultsClient.NewListBySubscriptionPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listBySubscriptionCreateRequest(ctx, options) + }, nil) + if err != nil { + return ExascaleDbStorageVaultsClientListBySubscriptionResponse{}, err + } + return client.listBySubscriptionHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listBySubscriptionCreateRequest creates the ListBySubscription request. +func (client *ExascaleDbStorageVaultsClient) listBySubscriptionCreateRequest(ctx context.Context, _ *ExascaleDbStorageVaultsClientListBySubscriptionOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/exascaleDbStorageVaults" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listBySubscriptionHandleResponse handles the ListBySubscription response. +func (client *ExascaleDbStorageVaultsClient) listBySubscriptionHandleResponse(resp *http.Response) (ExascaleDbStorageVaultsClientListBySubscriptionResponse, error) { + result := ExascaleDbStorageVaultsClientListBySubscriptionResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.ExascaleDbStorageVaultListResult); err != nil { + return ExascaleDbStorageVaultsClientListBySubscriptionResponse{}, err + } + return result, nil +} + +// BeginUpdate - Update a ExascaleDbStorageVault +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - exascaleDbStorageVaultName - The name of the ExascaleDbStorageVault +// - properties - The resource properties to be updated. +// - options - ExascaleDbStorageVaultsClientBeginUpdateOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.BeginUpdate +// method. +func (client *ExascaleDbStorageVaultsClient) BeginUpdate(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, properties ExascaleDbStorageVaultTagsUpdate, options *ExascaleDbStorageVaultsClientBeginUpdateOptions) (*runtime.Poller[ExascaleDbStorageVaultsClientUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.update(ctx, resourceGroupName, exascaleDbStorageVaultName, properties, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ExascaleDbStorageVaultsClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ExascaleDbStorageVaultsClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Update - Update a ExascaleDbStorageVault +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *ExascaleDbStorageVaultsClient) update(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, properties ExascaleDbStorageVaultTagsUpdate, options *ExascaleDbStorageVaultsClientBeginUpdateOptions) (*http.Response, error) { + var err error + const operationName = "ExascaleDbStorageVaultsClient.BeginUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.updateCreateRequest(ctx, resourceGroupName, exascaleDbStorageVaultName, properties, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// updateCreateRequest creates the Update request. +func (client *ExascaleDbStorageVaultsClient) updateCreateRequest(ctx context.Context, resourceGroupName string, exascaleDbStorageVaultName string, properties ExascaleDbStorageVaultTagsUpdate, _ *ExascaleDbStorageVaultsClientBeginUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/exascaleDbStorageVaults/{exascaleDbStorageVaultName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if exascaleDbStorageVaultName == "" { + return nil, errors.New("parameter exascaleDbStorageVaultName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{exascaleDbStorageVaultName}", url.PathEscape(exascaleDbStorageVaultName)) + req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, properties); err != nil { + return nil, err + } + return req, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/flexcomponents_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/flexcomponents_client.go new file mode 100644 index 00000000..9af173cf --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/flexcomponents_client.go @@ -0,0 +1,167 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// FlexComponentsClient contains the methods for the FlexComponents group. +// Don't use this type directly, use NewFlexComponentsClient() instead. +type FlexComponentsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewFlexComponentsClient creates a new instance of FlexComponentsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewFlexComponentsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*FlexComponentsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &FlexComponentsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a FlexComponent +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - flexComponentName - The name of the FlexComponent +// - options - FlexComponentsClientGetOptions contains the optional parameters for the FlexComponentsClient.Get method. +func (client *FlexComponentsClient) Get(ctx context.Context, location string, flexComponentName string, options *FlexComponentsClientGetOptions) (FlexComponentsClientGetResponse, error) { + var err error + const operationName = "FlexComponentsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, flexComponentName, options) + if err != nil { + return FlexComponentsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return FlexComponentsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return FlexComponentsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *FlexComponentsClient) getCreateRequest(ctx context.Context, location string, flexComponentName string, _ *FlexComponentsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/flexComponents/{flexComponentName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if flexComponentName == "" { + return nil, errors.New("parameter flexComponentName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{flexComponentName}", url.PathEscape(flexComponentName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *FlexComponentsClient) getHandleResponse(resp *http.Response) (FlexComponentsClientGetResponse, error) { + result := FlexComponentsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.FlexComponent); err != nil { + return FlexComponentsClientGetResponse{}, err + } + return result, nil +} + +// NewListByParentPager - List FlexComponent resources by SubscriptionLocationResource +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - options - FlexComponentsClientListByParentOptions contains the optional parameters for the FlexComponentsClient.NewListByParentPager +// method. +func (client *FlexComponentsClient) NewListByParentPager(location string, options *FlexComponentsClientListByParentOptions) *runtime.Pager[FlexComponentsClientListByParentResponse] { + return runtime.NewPager(runtime.PagingHandler[FlexComponentsClientListByParentResponse]{ + More: func(page FlexComponentsClientListByParentResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *FlexComponentsClientListByParentResponse) (FlexComponentsClientListByParentResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "FlexComponentsClient.NewListByParentPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByParentCreateRequest(ctx, location, options) + }, nil) + if err != nil { + return FlexComponentsClientListByParentResponse{}, err + } + return client.listByParentHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByParentCreateRequest creates the ListByParent request. +func (client *FlexComponentsClient) listByParentCreateRequest(ctx context.Context, location string, options *FlexComponentsClientListByParentOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/flexComponents" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + if options != nil && options.Shape != nil { + reqQP.Set("shape", string(*options.Shape)) + } + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByParentHandleResponse handles the ListByParent response. +func (client *FlexComponentsClient) listByParentHandleResponse(resp *http.Response) (FlexComponentsClientListByParentResponse, error) { + result := FlexComponentsClientListByParentResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.FlexComponentListResult); err != nil { + return FlexComponentsClientListByParentResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/giminorversions_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/giminorversions_client.go new file mode 100644 index 00000000..23394357 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/giminorversions_client.go @@ -0,0 +1,180 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// GiMinorVersionsClient contains the methods for the GiMinorVersions group. +// Don't use this type directly, use NewGiMinorVersionsClient() instead. +type GiMinorVersionsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewGiMinorVersionsClient creates a new instance of GiMinorVersionsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewGiMinorVersionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*GiMinorVersionsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &GiMinorVersionsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a GiMinorVersion +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - giversionname - GiVersion name +// - giMinorVersionName - The name of the GiMinorVersion +// - options - GiMinorVersionsClientGetOptions contains the optional parameters for the GiMinorVersionsClient.Get method. +func (client *GiMinorVersionsClient) Get(ctx context.Context, location string, giversionname string, giMinorVersionName string, options *GiMinorVersionsClientGetOptions) (GiMinorVersionsClientGetResponse, error) { + var err error + const operationName = "GiMinorVersionsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, giversionname, giMinorVersionName, options) + if err != nil { + return GiMinorVersionsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return GiMinorVersionsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return GiMinorVersionsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *GiMinorVersionsClient) getCreateRequest(ctx context.Context, location string, giversionname string, giMinorVersionName string, _ *GiMinorVersionsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/giVersions/{giversionname}/giMinorVersions/{giMinorVersionName}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if giversionname == "" { + return nil, errors.New("parameter giversionname cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{giversionname}", url.PathEscape(giversionname)) + if giMinorVersionName == "" { + return nil, errors.New("parameter giMinorVersionName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{giMinorVersionName}", url.PathEscape(giMinorVersionName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *GiMinorVersionsClient) getHandleResponse(resp *http.Response) (GiMinorVersionsClientGetResponse, error) { + result := GiMinorVersionsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.GiMinorVersion); err != nil { + return GiMinorVersionsClientGetResponse{}, err + } + return result, nil +} + +// NewListByParentPager - List GiMinorVersion resources by GiVersion +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - giversionname - GiVersion name +// - options - GiMinorVersionsClientListByParentOptions contains the optional parameters for the GiMinorVersionsClient.NewListByParentPager +// method. +func (client *GiMinorVersionsClient) NewListByParentPager(location string, giversionname string, options *GiMinorVersionsClientListByParentOptions) *runtime.Pager[GiMinorVersionsClientListByParentResponse] { + return runtime.NewPager(runtime.PagingHandler[GiMinorVersionsClientListByParentResponse]{ + More: func(page GiMinorVersionsClientListByParentResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *GiMinorVersionsClientListByParentResponse) (GiMinorVersionsClientListByParentResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "GiMinorVersionsClient.NewListByParentPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByParentCreateRequest(ctx, location, giversionname, options) + }, nil) + if err != nil { + return GiMinorVersionsClientListByParentResponse{}, err + } + return client.listByParentHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByParentCreateRequest creates the ListByParent request. +func (client *GiMinorVersionsClient) listByParentCreateRequest(ctx context.Context, location string, giversionname string, options *GiMinorVersionsClientListByParentOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/giVersions/{giversionname}/giMinorVersions" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if giversionname == "" { + return nil, errors.New("parameter giversionname cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{giversionname}", url.PathEscape(giversionname)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + if options != nil && options.ShapeFamily != nil { + reqQP.Set("shapeFamily", string(*options.ShapeFamily)) + } + if options != nil && options.Zone != nil { + reqQP.Set("zone", *options.Zone) + } + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByParentHandleResponse handles the ListByParent response. +func (client *GiMinorVersionsClient) listByParentHandleResponse(resp *http.Response) (GiMinorVersionsClientListByParentResponse, error) { + result := GiMinorVersionsClientListByParentResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.GiMinorVersionListResult); err != nil { + return GiMinorVersionsClientListByParentResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/giversions_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/giversions_client.go new file mode 100644 index 00000000..4e6a293b --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/giversions_client.go @@ -0,0 +1,170 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// GiVersionsClient contains the methods for the GiVersions group. +// Don't use this type directly, use NewGiVersionsClient() instead. +type GiVersionsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewGiVersionsClient creates a new instance of GiVersionsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewGiVersionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*GiVersionsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &GiVersionsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a GiVersion +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - giversionname - GiVersion name +// - options - GiVersionsClientGetOptions contains the optional parameters for the GiVersionsClient.Get method. +func (client *GiVersionsClient) Get(ctx context.Context, location string, giversionname string, options *GiVersionsClientGetOptions) (GiVersionsClientGetResponse, error) { + var err error + const operationName = "GiVersionsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, giversionname, options) + if err != nil { + return GiVersionsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return GiVersionsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return GiVersionsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *GiVersionsClient) getCreateRequest(ctx context.Context, location string, giversionname string, _ *GiVersionsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/giVersions/{giversionname}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if giversionname == "" { + return nil, errors.New("parameter giversionname cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{giversionname}", url.PathEscape(giversionname)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *GiVersionsClient) getHandleResponse(resp *http.Response) (GiVersionsClientGetResponse, error) { + result := GiVersionsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.GiVersion); err != nil { + return GiVersionsClientGetResponse{}, err + } + return result, nil +} + +// NewListByLocationPager - List GiVersion resources by SubscriptionLocationResource +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - options - GiVersionsClientListByLocationOptions contains the optional parameters for the GiVersionsClient.NewListByLocationPager +// method. +func (client *GiVersionsClient) NewListByLocationPager(location string, options *GiVersionsClientListByLocationOptions) *runtime.Pager[GiVersionsClientListByLocationResponse] { + return runtime.NewPager(runtime.PagingHandler[GiVersionsClientListByLocationResponse]{ + More: func(page GiVersionsClientListByLocationResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *GiVersionsClientListByLocationResponse) (GiVersionsClientListByLocationResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "GiVersionsClient.NewListByLocationPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByLocationCreateRequest(ctx, location, options) + }, nil) + if err != nil { + return GiVersionsClientListByLocationResponse{}, err + } + return client.listByLocationHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByLocationCreateRequest creates the ListByLocation request. +func (client *GiVersionsClient) listByLocationCreateRequest(ctx context.Context, location string, options *GiVersionsClientListByLocationOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/giVersions" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + if options != nil && options.Shape != nil { + reqQP.Set("shape", string(*options.Shape)) + } + if options != nil && options.Zone != nil { + reqQP.Set("zone", *options.Zone) + } + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByLocationHandleResponse handles the ListByLocation response. +func (client *GiVersionsClient) listByLocationHandleResponse(resp *http.Response) (GiVersionsClientListByLocationResponse, error) { + result := GiVersionsClientListByLocationResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.GiVersionListResult); err != nil { + return GiVersionsClientListByLocationResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/interfaces.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/interfaces.go new file mode 100644 index 00000000..4ecd1094 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/interfaces.go @@ -0,0 +1,15 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +// AutonomousDatabaseBasePropertiesClassification provides polymorphic access to related types. +// Call the interface's GetAutonomousDatabaseBaseProperties() method to access the common type. +// Use a type switch to determine the concrete type. The possible types are: +// - *AutonomousDatabaseBaseProperties, *AutonomousDatabaseCloneProperties, *AutonomousDatabaseCrossRegionDisasterRecoveryProperties, +// - *AutonomousDatabaseFromBackupTimestampProperties, *AutonomousDatabaseProperties +type AutonomousDatabaseBasePropertiesClassification interface { + // GetAutonomousDatabaseBaseProperties returns the AutonomousDatabaseBaseProperties content of the underlying type. + GetAutonomousDatabaseBaseProperties() *AutonomousDatabaseBaseProperties +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/models.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/models.go new file mode 100644 index 00000000..856d3db9 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/models.go @@ -0,0 +1,4092 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import "time" + +// ActivationLinks - Activation Links model +type ActivationLinks struct { + // READ-ONLY; Existing Cloud Account Activation Link + ExistingCloudAccountActivationLink *string + + // READ-ONLY; New Cloud Account Activation Link + NewCloudAccountActivationLink *string +} + +// AddRemoveDbNode - Add/Remove (Virtual Machine) DbNode model +type AddRemoveDbNode struct { + // REQUIRED; Db servers ocids + DbServers []*string +} + +// AllConnectionStringType - The connection string profile to allow clients to group, filter and select connection string +// values based on structured metadata. +type AllConnectionStringType struct { + // The High database service provides the highest level of resources to each SQL statement resulting in the highest performance, + // but supports the fewest number of concurrent SQL statements. + High *string + + // The Low database service provides the least level of resources to each SQL statement, but supports the most number of concurrent + // SQL statements. + Low *string + + // The Medium database service provides a lower level of resources to each SQL statement potentially resulting a lower level + // of performance, but supports more concurrent SQL statements. + Medium *string +} + +// ApexDetailsType - Information about Oracle APEX Application Development. +type ApexDetailsType struct { + // The Oracle APEX Application Development version. + ApexVersion *string + + // The Oracle REST Data Services (ORDS) version. + OrdsVersion *string +} + +// AutonomousDatabase - Autonomous Database resource model. +type AutonomousDatabase struct { + // REQUIRED; The geo-location where the resource lives + Location *string + + // The resource-specific properties for this resource. + Properties AutonomousDatabaseBasePropertiesClassification + + // Resource tags. + Tags map[string]*string + + // READ-ONLY; The database name. + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// AutonomousDatabaseBackup resource definition +type AutonomousDatabaseBackup struct { + // The resource-specific properties for this resource. + Properties *AutonomousDatabaseBackupProperties + + // READ-ONLY; AutonomousDatabaseBackup id + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// AutonomousDatabaseBackupListResult - The response of a AutonomousDatabaseBackup list operation. +type AutonomousDatabaseBackupListResult struct { + // REQUIRED; The AutonomousDatabaseBackup items on this page + Value []*AutonomousDatabaseBackup + + // The link to the next page of items + NextLink *string +} + +// AutonomousDatabaseBackupProperties - AutonomousDatabaseBackup resource model +type AutonomousDatabaseBackupProperties struct { + // The user-friendly name for the backup. The name does not have to be unique. + DisplayName *string + + // Retention period, in days + RetentionPeriodInDays *int32 + + // READ-ONLY; The OCID of the Autonomous Database. + AutonomousDatabaseOcid *string + + // READ-ONLY; The type of backup. + BackupType *AutonomousDatabaseBackupType + + // READ-ONLY; The size of the database in terabytes at the time the backup was taken. + DatabaseSizeInTbs *float64 + + // READ-ONLY; A valid Oracle Database version for Autonomous Database. + DbVersion *string + + // READ-ONLY; Indicates whether the backup is user-initiated or automatic. + IsAutomatic *bool + + // READ-ONLY; Indicates whether the backup can be used to restore the associated Autonomous Database. + IsRestorable *bool + + // READ-ONLY; Additional information about the current lifecycle state. + LifecycleDetails *string + + // READ-ONLY; The current state of the backup. + LifecycleState *AutonomousDatabaseBackupLifecycleState + + // READ-ONLY; The OCID of the Autonomous Database backup. + Ocid *string + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; The backup size in terabytes (TB). + SizeInTbs *float64 + + // READ-ONLY; Timestamp until when the backup will be available. + TimeAvailableTil *time.Time + + // READ-ONLY; The date and time the backup completed. + TimeEnded *string + + // READ-ONLY; The date and time the backup started. + TimeStarted *string +} + +// AutonomousDatabaseBackupUpdate - The type used for update operations of the AutonomousDatabaseBackup. +type AutonomousDatabaseBackupUpdate struct { + // The resource-specific properties for this resource. + Properties *AutonomousDatabaseBackupUpdateProperties +} + +// AutonomousDatabaseBackupUpdateProperties - The updatable properties of the AutonomousDatabaseBackup. +type AutonomousDatabaseBackupUpdateProperties struct { + // Retention period, in days + RetentionPeriodInDays *int32 +} + +// AutonomousDatabaseBaseProperties - Autonomous Database base resource model. +type AutonomousDatabaseBaseProperties struct { + // REQUIRED; Database type to be created. + DataBaseType *DataBaseType + + // Admin password. + AdminPassword *string + + // Autonomous Database ID + AutonomousDatabaseID *string + + // The maintenance schedule type of the Autonomous Database Serverless. + AutonomousMaintenanceScheduleType *AutonomousMaintenanceScheduleType + + // Retention period, in days, for long-term backups + BackupRetentionPeriodInDays *int32 + + // The number of CPU cores to be made available to the database. + CPUCoreCount *int32 + + // The character set for the autonomous database. + CharacterSet *string + + // The compute amount (CPUs) available to the database. + ComputeCount *float32 + + // The compute model of the Autonomous Database. + ComputeModel *ComputeModel + + // Customer Contacts. + CustomerContacts []*CustomerContact + + // The size, in gigabytes, of the data volume that will be created and attached to the database. + DataStorageSizeInGbs *int32 + + // The quantity of data in the database, in terabytes. + DataStorageSizeInTbs *int32 + + // The Oracle Database Edition that applies to the Autonomous databases. + DatabaseEdition *DatabaseEditionType + + // A valid Oracle Database version for Autonomous Database. + DbVersion *string + + // The Autonomous Database workload type + DbWorkload *WorkloadType + + // The user-friendly name for the Autonomous Database. + DisplayName *string + + // Indicates if auto scaling is enabled for the Autonomous Database CPU core count. + IsAutoScalingEnabled *bool + + // Indicates if auto scaling is enabled for the Autonomous Database storage. + IsAutoScalingForStorageEnabled *bool + + // Indicates whether the Autonomous Database has local or called in-region Data Guard enabled. + IsLocalDataGuardEnabled *bool + + // Specifies if the Autonomous Database requires mTLS connections. + IsMtlsConnectionRequired *bool + + // Specifies if the Autonomous Database preview version is being provisioned. + IsPreviewVersionWithServiceTermsAccepted *bool + + // The Oracle license model that applies to the Oracle Autonomous Database. The default is LICENSE_INCLUDED. + LicenseModel *LicenseModel + + // Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to which Automatic Failover + // will be triggered when necessary for a Local Autonomous Data Guard + LocalAdgAutoFailoverMaxDataLossLimit *int32 + + // Details for the long-term backup schedule. + LongTermBackupSchedule *LongTermBackUpScheduleDetails + + // The character set for the Autonomous Database. + NcharacterSet *string + + // Indicates the Autonomous Database mode. + OpenMode *OpenModeType + + // The Azure resource ID of the Disaster Recovery peer database, which is located in a different region from the current peer + // database. + PeerDbID *string + + // The Autonomous Database permission level. + PermissionLevel *PermissionLevelType + + // The private endpoint Ip address for the resource. + PrivateEndpointIP *string + + // The resource's private endpoint label. + PrivateEndpointLabel *string + + // The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous Data Guard is enabled. + Role *RoleType + + // The list of scheduled operations. + ScheduledOperations *ScheduledOperationsType + + // Client subnet + SubnetID *string + + // VNET for network connectivity + VnetID *string + + // The client IP access control list (ACL). This is an array of CIDR notations and/or IP addresses. Values should be separate + // strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25'] + WhitelistedIPs []*string + + // READ-ONLY; The current amount of storage in use for user and system data, in terabytes (TB). + ActualUsedDataStorageSizeInTbs *float64 + + // READ-ONLY; The amount of storage currently allocated for the database tables and billed for, rounded up. + AllocatedStorageSizeInTbs *float64 + + // READ-ONLY; Information about Oracle APEX Application Development. + ApexDetails *ApexDetailsType + + // READ-ONLY; List of Oracle Database versions available for a database upgrade. If there are no version upgrades available, + // this list is empty. + AvailableUpgradeVersions []*string + + // READ-ONLY; The connection string used to connect to the Autonomous Database. + ConnectionStrings *ConnectionStringType + + // READ-ONLY; The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser from a Compute + // instance within your VCN or that has a direct connection to your VCN. + ConnectionUrls *ConnectionURLType + + // READ-ONLY; Status of the Data Safe registration for this Autonomous Database. + DataSafeStatus *DataSafeStatusType + + // READ-ONLY; Indicates the number of seconds of data loss for a Data Guard failover. + FailedDataRecoveryInSeconds *int32 + + // READ-ONLY; The area assigned to In-Memory tables in Autonomous Database. + InMemoryAreaInGbs *int32 + + // READ-ONLY; Indicates if the Autonomous Database version is a preview version. + IsPreview *bool + + // READ-ONLY; Indicates whether the Autonomous Database has Cross Region Data Guard enabled. + IsRemoteDataGuardEnabled *bool + + // READ-ONLY; Additional information about the current lifecycle state. + LifecycleDetails *string + + // READ-ONLY; Views lifecycleState + LifecycleState *AutonomousDatabaseLifecycleState + + // READ-ONLY; Indicates the local disaster recovery (DR) type of the Autonomous Database Serverless instance.Autonomous Data + // Guard (ADG) DR type provides business critical DR with a faster recovery time objective (RTO) during failover or switchover.Backup-based + // DR type provides lower cost DR with a slower RTO during failover or switchover. + LocalDisasterRecoveryType *DisasterRecoveryType + + // READ-ONLY; Local Autonomous Disaster Recovery standby database details. + LocalStandbyDb *AutonomousDatabaseStandbySummary + + // READ-ONLY; The amount of memory (in GBs) enabled per ECPU or OCPU. + MemoryPerOracleComputeUnitInGbs *int32 + + // READ-ONLY; The date and time when the next long-term backup would be created. + NextLongTermBackupTimeStamp *time.Time + + // READ-ONLY; HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + OciURL *string + + // READ-ONLY; Database ocid + Ocid *string + + // READ-ONLY; Status of Operations Insights for this Autonomous Database. + OperationsInsightsStatus *OperationsInsightsStatusType + + // READ-ONLY; The list of Azure resource IDs of standby databases located in Autonomous Data Guard remote regions that are + // associated with the source database. Note that for Autonomous Database Serverless instances, standby databases located + // in the same region as the source primary database do not have Azure IDs. + PeerDbIDs []*string + + // READ-ONLY; The private endpoint for the resource. + PrivateEndpoint *string + + // READ-ONLY; An array of CPU values that an Autonomous Database can be scaled to. + ProvisionableCpus []*int32 + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; Indicates remote disaster recovery configuration + RemoteDisasterRecoveryConfiguration *DisasterRecoveryConfigurationDetails + + // READ-ONLY; The SQL Web Developer URL for the Oracle Autonomous Database. + SQLWebDeveloperURL *string + + // READ-ONLY; The URL of the Service Console for the Autonomous Database. + ServiceConsoleURL *string + + // READ-ONLY; The list of regions that support the creation of an Autonomous Database clone or an Autonomous Data Guard standby + // database. + SupportedRegionsToCloneTo []*string + + // READ-ONLY; The date and time that the database was created. + TimeCreated *time.Time + + // READ-ONLY; The date and time the Autonomous Data Guard role was switched for the Autonomous Database. + TimeDataGuardRoleChanged *string + + // READ-ONLY; The date and time the Always Free database will be automatically deleted because of inactivity. + TimeDeletionOfFreeAutonomousDatabase *string + + // READ-ONLY; The date and time the Disaster Recovery role was switched for the standby Autonomous Database. + TimeDisasterRecoveryRoleChanged *time.Time + + // READ-ONLY; The date and time that Autonomous Data Guard was enabled for an Autonomous Database where the standby was provisioned + // in the same region as the primary database. + TimeLocalDataGuardEnabled *string + + // READ-ONLY; The date and time when maintenance will begin. + TimeMaintenanceBegin *time.Time + + // READ-ONLY; The date and time when maintenance will end. + TimeMaintenanceEnd *time.Time + + // READ-ONLY; The timestamp of the last failover operation. + TimeOfLastFailover *string + + // READ-ONLY; The date and time when last refresh happened. + TimeOfLastRefresh *string + + // READ-ONLY; The refresh point timestamp (UTC). + TimeOfLastRefreshPoint *string + + // READ-ONLY; The timestamp of the last switchover operation for the Autonomous Database. + TimeOfLastSwitchover *string + + // READ-ONLY; The date and time the Always Free database will be stopped because of inactivity. + TimeReclamationOfFreeAutonomousDatabase *string + + // READ-ONLY; The storage space consumed by Autonomous Database in GBs. + UsedDataStorageSizeInGbs *int32 + + // READ-ONLY; The amount of storage that has been used, in terabytes. + UsedDataStorageSizeInTbs *int32 +} + +// GetAutonomousDatabaseBaseProperties implements the AutonomousDatabaseBasePropertiesClassification interface for type AutonomousDatabaseBaseProperties. +func (a *AutonomousDatabaseBaseProperties) GetAutonomousDatabaseBaseProperties() *AutonomousDatabaseBaseProperties { + return a +} + +// AutonomousDatabaseCharacterSets resource definition +type AutonomousDatabaseCharacterSet struct { + // The resource-specific properties for this resource. + Properties *AutonomousDatabaseCharacterSetProperties + + // READ-ONLY; AutonomousDatabaseCharacterSet name + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// AutonomousDatabaseCharacterSetListResult - The response of a AutonomousDatabaseCharacterSet list operation. +type AutonomousDatabaseCharacterSetListResult struct { + // REQUIRED; The AutonomousDatabaseCharacterSet items on this page + Value []*AutonomousDatabaseCharacterSet + + // The link to the next page of items + NextLink *string +} + +// AutonomousDatabaseCharacterSetProperties - AutonomousDatabaseCharacterSet resource model +type AutonomousDatabaseCharacterSetProperties struct { + // REQUIRED; The Oracle Autonomous Database supported character sets. + CharacterSet *string +} + +// AutonomousDatabaseCloneProperties - Autonomous Database clone resource model. +type AutonomousDatabaseCloneProperties struct { + // REQUIRED; The Autonomous Database clone type. + CloneType *CloneType + + // CONSTANT; Database type to be created. + // Field has constant value DataBaseTypeClone, any specified value is ignored. + DataBaseType *DataBaseType + + // REQUIRED; The Azure resource ID of the Autonomous Database that was cloned to create the current Autonomous Database. + SourceID *string + + // Admin password. + AdminPassword *string + + // Autonomous Database ID + AutonomousDatabaseID *string + + // The maintenance schedule type of the Autonomous Database Serverless. + AutonomousMaintenanceScheduleType *AutonomousMaintenanceScheduleType + + // Retention period, in days, for long-term backups + BackupRetentionPeriodInDays *int32 + + // The number of CPU cores to be made available to the database. + CPUCoreCount *int32 + + // The character set for the autonomous database. + CharacterSet *string + + // The compute amount (CPUs) available to the database. + ComputeCount *float32 + + // The compute model of the Autonomous Database. + ComputeModel *ComputeModel + + // Customer Contacts. + CustomerContacts []*CustomerContact + + // The size, in gigabytes, of the data volume that will be created and attached to the database. + DataStorageSizeInGbs *int32 + + // The quantity of data in the database, in terabytes. + DataStorageSizeInTbs *int32 + + // The Oracle Database Edition that applies to the Autonomous databases. + DatabaseEdition *DatabaseEditionType + + // A valid Oracle Database version for Autonomous Database. + DbVersion *string + + // The Autonomous Database workload type + DbWorkload *WorkloadType + + // The user-friendly name for the Autonomous Database. + DisplayName *string + + // Indicates if auto scaling is enabled for the Autonomous Database CPU core count. + IsAutoScalingEnabled *bool + + // Indicates if auto scaling is enabled for the Autonomous Database storage. + IsAutoScalingForStorageEnabled *bool + + // Indicates whether the Autonomous Database has local or called in-region Data Guard enabled. + IsLocalDataGuardEnabled *bool + + // Specifies if the Autonomous Database requires mTLS connections. + IsMtlsConnectionRequired *bool + + // Specifies if the Autonomous Database preview version is being provisioned. + IsPreviewVersionWithServiceTermsAccepted *bool + + // The Oracle license model that applies to the Oracle Autonomous Database. The default is LICENSE_INCLUDED. + LicenseModel *LicenseModel + + // Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to which Automatic Failover + // will be triggered when necessary for a Local Autonomous Data Guard + LocalAdgAutoFailoverMaxDataLossLimit *int32 + + // Details for the long-term backup schedule. + LongTermBackupSchedule *LongTermBackUpScheduleDetails + + // The character set for the Autonomous Database. + NcharacterSet *string + + // Indicates the Autonomous Database mode. + OpenMode *OpenModeType + + // The Azure resource ID of the Disaster Recovery peer database, which is located in a different region from the current peer + // database. + PeerDbID *string + + // The Autonomous Database permission level. + PermissionLevel *PermissionLevelType + + // The private endpoint Ip address for the resource. + PrivateEndpointIP *string + + // The resource's private endpoint label. + PrivateEndpointLabel *string + + // The refresh mode of the clone. + RefreshableModel *RefreshableModelType + + // The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous Data Guard is enabled. + Role *RoleType + + // The list of scheduled operations. + ScheduledOperations *ScheduledOperationsType + + // The source of the database. + Source *SourceType + + // Client subnet + SubnetID *string + + // The time and date as an RFC3339 formatted string, e.g., 2022-01-01T12:00:00.000Z, to set the limit for a refreshable clone + // to be reconnected to its source database. + TimeUntilReconnectCloneEnabled *string + + // VNET for network connectivity + VnetID *string + + // The client IP access control list (ACL). This is an array of CIDR notations and/or IP addresses. Values should be separate + // strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25'] + WhitelistedIPs []*string + + // READ-ONLY; The current amount of storage in use for user and system data, in terabytes (TB). + ActualUsedDataStorageSizeInTbs *float64 + + // READ-ONLY; The amount of storage currently allocated for the database tables and billed for, rounded up. + AllocatedStorageSizeInTbs *float64 + + // READ-ONLY; Information about Oracle APEX Application Development. + ApexDetails *ApexDetailsType + + // READ-ONLY; List of Oracle Database versions available for a database upgrade. If there are no version upgrades available, + // this list is empty. + AvailableUpgradeVersions []*string + + // READ-ONLY; The connection string used to connect to the Autonomous Database. + ConnectionStrings *ConnectionStringType + + // READ-ONLY; The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser from a Compute + // instance within your VCN or that has a direct connection to your VCN. + ConnectionUrls *ConnectionURLType + + // READ-ONLY; Status of the Data Safe registration for this Autonomous Database. + DataSafeStatus *DataSafeStatusType + + // READ-ONLY; Indicates the number of seconds of data loss for a Data Guard failover. + FailedDataRecoveryInSeconds *int32 + + // READ-ONLY; The area assigned to In-Memory tables in Autonomous Database. + InMemoryAreaInGbs *int32 + + // READ-ONLY; Indicates if the Autonomous Database version is a preview version. + IsPreview *bool + + // READ-ONLY; Indicates if the refreshable clone can be reconnected to its source database. + IsReconnectCloneEnabled *bool + + // READ-ONLY; Indicates if the Autonomous Database is a refreshable clone. + IsRefreshableClone *bool + + // READ-ONLY; Indicates whether the Autonomous Database has Cross Region Data Guard enabled. + IsRemoteDataGuardEnabled *bool + + // READ-ONLY; Additional information about the current lifecycle state. + LifecycleDetails *string + + // READ-ONLY; Views lifecycleState + LifecycleState *AutonomousDatabaseLifecycleState + + // READ-ONLY; Indicates the local disaster recovery (DR) type of the Autonomous Database Serverless instance.Autonomous Data + // Guard (ADG) DR type provides business critical DR with a faster recovery time objective (RTO) during failover or switchover.Backup-based + // DR type provides lower cost DR with a slower RTO during failover or switchover. + LocalDisasterRecoveryType *DisasterRecoveryType + + // READ-ONLY; Local Autonomous Disaster Recovery standby database details. + LocalStandbyDb *AutonomousDatabaseStandbySummary + + // READ-ONLY; The amount of memory (in GBs) enabled per ECPU or OCPU. + MemoryPerOracleComputeUnitInGbs *int32 + + // READ-ONLY; The date and time when the next long-term backup would be created. + NextLongTermBackupTimeStamp *time.Time + + // READ-ONLY; HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + OciURL *string + + // READ-ONLY; Database ocid + Ocid *string + + // READ-ONLY; Status of Operations Insights for this Autonomous Database. + OperationsInsightsStatus *OperationsInsightsStatusType + + // READ-ONLY; The list of Azure resource IDs of standby databases located in Autonomous Data Guard remote regions that are + // associated with the source database. Note that for Autonomous Database Serverless instances, standby databases located + // in the same region as the source primary database do not have Azure IDs. + PeerDbIDs []*string + + // READ-ONLY; The private endpoint for the resource. + PrivateEndpoint *string + + // READ-ONLY; An array of CPU values that an Autonomous Database can be scaled to. + ProvisionableCpus []*int32 + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; The refresh status of the clone. + RefreshableStatus *RefreshableStatusType + + // READ-ONLY; Indicates remote disaster recovery configuration + RemoteDisasterRecoveryConfiguration *DisasterRecoveryConfigurationDetails + + // READ-ONLY; The SQL Web Developer URL for the Oracle Autonomous Database. + SQLWebDeveloperURL *string + + // READ-ONLY; The URL of the Service Console for the Autonomous Database. + ServiceConsoleURL *string + + // READ-ONLY; The list of regions that support the creation of an Autonomous Database clone or an Autonomous Data Guard standby + // database. + SupportedRegionsToCloneTo []*string + + // READ-ONLY; The date and time that the database was created. + TimeCreated *time.Time + + // READ-ONLY; The date and time the Autonomous Data Guard role was switched for the Autonomous Database. + TimeDataGuardRoleChanged *string + + // READ-ONLY; The date and time the Always Free database will be automatically deleted because of inactivity. + TimeDeletionOfFreeAutonomousDatabase *string + + // READ-ONLY; The date and time the Disaster Recovery role was switched for the standby Autonomous Database. + TimeDisasterRecoveryRoleChanged *time.Time + + // READ-ONLY; The date and time that Autonomous Data Guard was enabled for an Autonomous Database where the standby was provisioned + // in the same region as the primary database. + TimeLocalDataGuardEnabled *string + + // READ-ONLY; The date and time when maintenance will begin. + TimeMaintenanceBegin *time.Time + + // READ-ONLY; The date and time when maintenance will end. + TimeMaintenanceEnd *time.Time + + // READ-ONLY; The timestamp of the last failover operation. + TimeOfLastFailover *string + + // READ-ONLY; The date and time when last refresh happened. + TimeOfLastRefresh *string + + // READ-ONLY; The refresh point timestamp (UTC). + TimeOfLastRefreshPoint *string + + // READ-ONLY; The timestamp of the last switchover operation for the Autonomous Database. + TimeOfLastSwitchover *string + + // READ-ONLY; The date and time the Always Free database will be stopped because of inactivity. + TimeReclamationOfFreeAutonomousDatabase *string + + // READ-ONLY; The storage space consumed by Autonomous Database in GBs. + UsedDataStorageSizeInGbs *int32 + + // READ-ONLY; The amount of storage that has been used, in terabytes. + UsedDataStorageSizeInTbs *int32 +} + +// GetAutonomousDatabaseBaseProperties implements the AutonomousDatabaseBasePropertiesClassification interface for type AutonomousDatabaseCloneProperties. +func (a *AutonomousDatabaseCloneProperties) GetAutonomousDatabaseBaseProperties() *AutonomousDatabaseBaseProperties { + return &AutonomousDatabaseBaseProperties{ + ActualUsedDataStorageSizeInTbs: a.ActualUsedDataStorageSizeInTbs, + AdminPassword: a.AdminPassword, + AllocatedStorageSizeInTbs: a.AllocatedStorageSizeInTbs, + ApexDetails: a.ApexDetails, + AutonomousDatabaseID: a.AutonomousDatabaseID, + AutonomousMaintenanceScheduleType: a.AutonomousMaintenanceScheduleType, + AvailableUpgradeVersions: a.AvailableUpgradeVersions, + BackupRetentionPeriodInDays: a.BackupRetentionPeriodInDays, + CPUCoreCount: a.CPUCoreCount, + CharacterSet: a.CharacterSet, + ComputeCount: a.ComputeCount, + ComputeModel: a.ComputeModel, + ConnectionStrings: a.ConnectionStrings, + ConnectionUrls: a.ConnectionUrls, + CustomerContacts: a.CustomerContacts, + DataBaseType: a.DataBaseType, + DataSafeStatus: a.DataSafeStatus, + DataStorageSizeInGbs: a.DataStorageSizeInGbs, + DataStorageSizeInTbs: a.DataStorageSizeInTbs, + DatabaseEdition: a.DatabaseEdition, + DbVersion: a.DbVersion, + DbWorkload: a.DbWorkload, + DisplayName: a.DisplayName, + FailedDataRecoveryInSeconds: a.FailedDataRecoveryInSeconds, + InMemoryAreaInGbs: a.InMemoryAreaInGbs, + IsAutoScalingEnabled: a.IsAutoScalingEnabled, + IsAutoScalingForStorageEnabled: a.IsAutoScalingForStorageEnabled, + IsLocalDataGuardEnabled: a.IsLocalDataGuardEnabled, + IsMtlsConnectionRequired: a.IsMtlsConnectionRequired, + IsPreview: a.IsPreview, + IsPreviewVersionWithServiceTermsAccepted: a.IsPreviewVersionWithServiceTermsAccepted, + IsRemoteDataGuardEnabled: a.IsRemoteDataGuardEnabled, + LicenseModel: a.LicenseModel, + LifecycleDetails: a.LifecycleDetails, + LifecycleState: a.LifecycleState, + LocalAdgAutoFailoverMaxDataLossLimit: a.LocalAdgAutoFailoverMaxDataLossLimit, + LocalDisasterRecoveryType: a.LocalDisasterRecoveryType, + LocalStandbyDb: a.LocalStandbyDb, + LongTermBackupSchedule: a.LongTermBackupSchedule, + MemoryPerOracleComputeUnitInGbs: a.MemoryPerOracleComputeUnitInGbs, + NcharacterSet: a.NcharacterSet, + NextLongTermBackupTimeStamp: a.NextLongTermBackupTimeStamp, + OciURL: a.OciURL, + Ocid: a.Ocid, + OpenMode: a.OpenMode, + OperationsInsightsStatus: a.OperationsInsightsStatus, + PeerDbID: a.PeerDbID, + PeerDbIDs: a.PeerDbIDs, + PermissionLevel: a.PermissionLevel, + PrivateEndpoint: a.PrivateEndpoint, + PrivateEndpointIP: a.PrivateEndpointIP, + PrivateEndpointLabel: a.PrivateEndpointLabel, + ProvisionableCpus: a.ProvisionableCpus, + ProvisioningState: a.ProvisioningState, + RemoteDisasterRecoveryConfiguration: a.RemoteDisasterRecoveryConfiguration, + Role: a.Role, + SQLWebDeveloperURL: a.SQLWebDeveloperURL, + ScheduledOperations: a.ScheduledOperations, + ServiceConsoleURL: a.ServiceConsoleURL, + SubnetID: a.SubnetID, + SupportedRegionsToCloneTo: a.SupportedRegionsToCloneTo, + TimeCreated: a.TimeCreated, + TimeDataGuardRoleChanged: a.TimeDataGuardRoleChanged, + TimeDeletionOfFreeAutonomousDatabase: a.TimeDeletionOfFreeAutonomousDatabase, + TimeDisasterRecoveryRoleChanged: a.TimeDisasterRecoveryRoleChanged, + TimeLocalDataGuardEnabled: a.TimeLocalDataGuardEnabled, + TimeMaintenanceBegin: a.TimeMaintenanceBegin, + TimeMaintenanceEnd: a.TimeMaintenanceEnd, + TimeOfLastFailover: a.TimeOfLastFailover, + TimeOfLastRefresh: a.TimeOfLastRefresh, + TimeOfLastRefreshPoint: a.TimeOfLastRefreshPoint, + TimeOfLastSwitchover: a.TimeOfLastSwitchover, + TimeReclamationOfFreeAutonomousDatabase: a.TimeReclamationOfFreeAutonomousDatabase, + UsedDataStorageSizeInGbs: a.UsedDataStorageSizeInGbs, + UsedDataStorageSizeInTbs: a.UsedDataStorageSizeInTbs, + VnetID: a.VnetID, + WhitelistedIPs: a.WhitelistedIPs, + } +} + +// AutonomousDatabaseCrossRegionDisasterRecoveryProperties - Autonomous Database Cross Region Disaster Recovery resource model. +type AutonomousDatabaseCrossRegionDisasterRecoveryProperties struct { + // CONSTANT; Database type to be created. + // Field has constant value DataBaseTypeCrossRegionDisasterRecovery, any specified value is ignored. + DataBaseType *DataBaseType + + // REQUIRED; Indicates the cross-region disaster recovery (DR) type of the standby Autonomous Database Serverless instance. + // Autonomous Data Guard (ADG) DR type provides business critical DR with a faster recovery time objective (RTO) during failover + // or switchover. Backup-based DR type provides lower cost DR with a slower RTO during failover or switchover. + RemoteDisasterRecoveryType *DisasterRecoveryType + + // CONSTANT; The source of the database. + // Field has constant value SourceTypeCrossRegionDisasterRecovery, any specified value is ignored. + Source *SourceType + + // REQUIRED; The Azure ID of the source Autonomous Database that will be used to create a new peer database for the DR association. + SourceID *string + + // Admin password. + AdminPassword *string + + // Autonomous Database ID + AutonomousDatabaseID *string + + // The maintenance schedule type of the Autonomous Database Serverless. + AutonomousMaintenanceScheduleType *AutonomousMaintenanceScheduleType + + // Retention period, in days, for long-term backups + BackupRetentionPeriodInDays *int32 + + // The number of CPU cores to be made available to the database. + CPUCoreCount *int32 + + // The character set for the autonomous database. + CharacterSet *string + + // The compute amount (CPUs) available to the database. + ComputeCount *float32 + + // The compute model of the Autonomous Database. + ComputeModel *ComputeModel + + // Customer Contacts. + CustomerContacts []*CustomerContact + + // The size, in gigabytes, of the data volume that will be created and attached to the database. + DataStorageSizeInGbs *int32 + + // The quantity of data in the database, in terabytes. + DataStorageSizeInTbs *int32 + + // The Oracle Database Edition that applies to the Autonomous databases. + DatabaseEdition *DatabaseEditionType + + // A valid Oracle Database version for Autonomous Database. + DbVersion *string + + // The Autonomous Database workload type + DbWorkload *WorkloadType + + // The user-friendly name for the Autonomous Database. + DisplayName *string + + // Indicates if auto scaling is enabled for the Autonomous Database CPU core count. + IsAutoScalingEnabled *bool + + // Indicates if auto scaling is enabled for the Autonomous Database storage. + IsAutoScalingForStorageEnabled *bool + + // Indicates whether the Autonomous Database has local or called in-region Data Guard enabled. + IsLocalDataGuardEnabled *bool + + // Specifies if the Autonomous Database requires mTLS connections. + IsMtlsConnectionRequired *bool + + // Specifies if the Autonomous Database preview version is being provisioned. + IsPreviewVersionWithServiceTermsAccepted *bool + + // If true, 7 days worth of backups are replicated across regions for Cross-Region ADB or Backup-Based DR between Primary + // and Standby. If false, the backups taken on the Primary are not replicated to the Standby database. + IsReplicateAutomaticBackups *bool + + // The Oracle license model that applies to the Oracle Autonomous Database. The default is LICENSE_INCLUDED. + LicenseModel *LicenseModel + + // Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to which Automatic Failover + // will be triggered when necessary for a Local Autonomous Data Guard + LocalAdgAutoFailoverMaxDataLossLimit *int32 + + // Details for the long-term backup schedule. + LongTermBackupSchedule *LongTermBackUpScheduleDetails + + // The character set for the Autonomous Database. + NcharacterSet *string + + // Indicates the Autonomous Database mode. + OpenMode *OpenModeType + + // The Azure resource ID of the Disaster Recovery peer database, which is located in a different region from the current peer + // database. + PeerDbID *string + + // The Autonomous Database permission level. + PermissionLevel *PermissionLevelType + + // The private endpoint Ip address for the resource. + PrivateEndpointIP *string + + // The resource's private endpoint label. + PrivateEndpointLabel *string + + // The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous Data Guard is enabled. + Role *RoleType + + // The list of scheduled operations. + ScheduledOperations *ScheduledOperationsType + + // The name of the region where source Autonomous Database exists. + SourceLocation *string + + // The source database ocid + SourceOcid *string + + // Client subnet + SubnetID *string + + // VNET for network connectivity + VnetID *string + + // The client IP access control list (ACL). This is an array of CIDR notations and/or IP addresses. Values should be separate + // strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25'] + WhitelistedIPs []*string + + // READ-ONLY; The current amount of storage in use for user and system data, in terabytes (TB). + ActualUsedDataStorageSizeInTbs *float64 + + // READ-ONLY; The amount of storage currently allocated for the database tables and billed for, rounded up. + AllocatedStorageSizeInTbs *float64 + + // READ-ONLY; Information about Oracle APEX Application Development. + ApexDetails *ApexDetailsType + + // READ-ONLY; List of Oracle Database versions available for a database upgrade. If there are no version upgrades available, + // this list is empty. + AvailableUpgradeVersions []*string + + // READ-ONLY; The connection string used to connect to the Autonomous Database. + ConnectionStrings *ConnectionStringType + + // READ-ONLY; The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser from a Compute + // instance within your VCN or that has a direct connection to your VCN. + ConnectionUrls *ConnectionURLType + + // READ-ONLY; Status of the Data Safe registration for this Autonomous Database. + DataSafeStatus *DataSafeStatusType + + // READ-ONLY; Indicates the number of seconds of data loss for a Data Guard failover. + FailedDataRecoveryInSeconds *int32 + + // READ-ONLY; The area assigned to In-Memory tables in Autonomous Database. + InMemoryAreaInGbs *int32 + + // READ-ONLY; Indicates if the Autonomous Database version is a preview version. + IsPreview *bool + + // READ-ONLY; Indicates whether the Autonomous Database has Cross Region Data Guard enabled. + IsRemoteDataGuardEnabled *bool + + // READ-ONLY; Additional information about the current lifecycle state. + LifecycleDetails *string + + // READ-ONLY; Views lifecycleState + LifecycleState *AutonomousDatabaseLifecycleState + + // READ-ONLY; Indicates the local disaster recovery (DR) type of the Autonomous Database Serverless instance.Autonomous Data + // Guard (ADG) DR type provides business critical DR with a faster recovery time objective (RTO) during failover or switchover.Backup-based + // DR type provides lower cost DR with a slower RTO during failover or switchover. + LocalDisasterRecoveryType *DisasterRecoveryType + + // READ-ONLY; Local Autonomous Disaster Recovery standby database details. + LocalStandbyDb *AutonomousDatabaseStandbySummary + + // READ-ONLY; The amount of memory (in GBs) enabled per ECPU or OCPU. + MemoryPerOracleComputeUnitInGbs *int32 + + // READ-ONLY; The date and time when the next long-term backup would be created. + NextLongTermBackupTimeStamp *time.Time + + // READ-ONLY; HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + OciURL *string + + // READ-ONLY; Database ocid + Ocid *string + + // READ-ONLY; Status of Operations Insights for this Autonomous Database. + OperationsInsightsStatus *OperationsInsightsStatusType + + // READ-ONLY; The list of Azure resource IDs of standby databases located in Autonomous Data Guard remote regions that are + // associated with the source database. Note that for Autonomous Database Serverless instances, standby databases located + // in the same region as the source primary database do not have Azure IDs. + PeerDbIDs []*string + + // READ-ONLY; The private endpoint for the resource. + PrivateEndpoint *string + + // READ-ONLY; An array of CPU values that an Autonomous Database can be scaled to. + ProvisionableCpus []*int32 + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; Indicates remote disaster recovery configuration + RemoteDisasterRecoveryConfiguration *DisasterRecoveryConfigurationDetails + + // READ-ONLY; The SQL Web Developer URL for the Oracle Autonomous Database. + SQLWebDeveloperURL *string + + // READ-ONLY; The URL of the Service Console for the Autonomous Database. + ServiceConsoleURL *string + + // READ-ONLY; The list of regions that support the creation of an Autonomous Database clone or an Autonomous Data Guard standby + // database. + SupportedRegionsToCloneTo []*string + + // READ-ONLY; The date and time that the database was created. + TimeCreated *time.Time + + // READ-ONLY; The date and time the Autonomous Data Guard role was switched for the Autonomous Database. + TimeDataGuardRoleChanged *string + + // READ-ONLY; The date and time the Always Free database will be automatically deleted because of inactivity. + TimeDeletionOfFreeAutonomousDatabase *string + + // READ-ONLY; The date and time the Disaster Recovery role was switched for the standby Autonomous Database. + TimeDisasterRecoveryRoleChanged *time.Time + + // READ-ONLY; The date and time that Autonomous Data Guard was enabled for an Autonomous Database where the standby was provisioned + // in the same region as the primary database. + TimeLocalDataGuardEnabled *string + + // READ-ONLY; The date and time when maintenance will begin. + TimeMaintenanceBegin *time.Time + + // READ-ONLY; The date and time when maintenance will end. + TimeMaintenanceEnd *time.Time + + // READ-ONLY; The timestamp of the last failover operation. + TimeOfLastFailover *string + + // READ-ONLY; The date and time when last refresh happened. + TimeOfLastRefresh *string + + // READ-ONLY; The refresh point timestamp (UTC). + TimeOfLastRefreshPoint *string + + // READ-ONLY; The timestamp of the last switchover operation for the Autonomous Database. + TimeOfLastSwitchover *string + + // READ-ONLY; The date and time the Always Free database will be stopped because of inactivity. + TimeReclamationOfFreeAutonomousDatabase *string + + // READ-ONLY; The storage space consumed by Autonomous Database in GBs. + UsedDataStorageSizeInGbs *int32 + + // READ-ONLY; The amount of storage that has been used, in terabytes. + UsedDataStorageSizeInTbs *int32 +} + +// GetAutonomousDatabaseBaseProperties implements the AutonomousDatabaseBasePropertiesClassification interface for type AutonomousDatabaseCrossRegionDisasterRecoveryProperties. +func (a *AutonomousDatabaseCrossRegionDisasterRecoveryProperties) GetAutonomousDatabaseBaseProperties() *AutonomousDatabaseBaseProperties { + return &AutonomousDatabaseBaseProperties{ + ActualUsedDataStorageSizeInTbs: a.ActualUsedDataStorageSizeInTbs, + AdminPassword: a.AdminPassword, + AllocatedStorageSizeInTbs: a.AllocatedStorageSizeInTbs, + ApexDetails: a.ApexDetails, + AutonomousDatabaseID: a.AutonomousDatabaseID, + AutonomousMaintenanceScheduleType: a.AutonomousMaintenanceScheduleType, + AvailableUpgradeVersions: a.AvailableUpgradeVersions, + BackupRetentionPeriodInDays: a.BackupRetentionPeriodInDays, + CPUCoreCount: a.CPUCoreCount, + CharacterSet: a.CharacterSet, + ComputeCount: a.ComputeCount, + ComputeModel: a.ComputeModel, + ConnectionStrings: a.ConnectionStrings, + ConnectionUrls: a.ConnectionUrls, + CustomerContacts: a.CustomerContacts, + DataBaseType: a.DataBaseType, + DataSafeStatus: a.DataSafeStatus, + DataStorageSizeInGbs: a.DataStorageSizeInGbs, + DataStorageSizeInTbs: a.DataStorageSizeInTbs, + DatabaseEdition: a.DatabaseEdition, + DbVersion: a.DbVersion, + DbWorkload: a.DbWorkload, + DisplayName: a.DisplayName, + FailedDataRecoveryInSeconds: a.FailedDataRecoveryInSeconds, + InMemoryAreaInGbs: a.InMemoryAreaInGbs, + IsAutoScalingEnabled: a.IsAutoScalingEnabled, + IsAutoScalingForStorageEnabled: a.IsAutoScalingForStorageEnabled, + IsLocalDataGuardEnabled: a.IsLocalDataGuardEnabled, + IsMtlsConnectionRequired: a.IsMtlsConnectionRequired, + IsPreview: a.IsPreview, + IsPreviewVersionWithServiceTermsAccepted: a.IsPreviewVersionWithServiceTermsAccepted, + IsRemoteDataGuardEnabled: a.IsRemoteDataGuardEnabled, + LicenseModel: a.LicenseModel, + LifecycleDetails: a.LifecycleDetails, + LifecycleState: a.LifecycleState, + LocalAdgAutoFailoverMaxDataLossLimit: a.LocalAdgAutoFailoverMaxDataLossLimit, + LocalDisasterRecoveryType: a.LocalDisasterRecoveryType, + LocalStandbyDb: a.LocalStandbyDb, + LongTermBackupSchedule: a.LongTermBackupSchedule, + MemoryPerOracleComputeUnitInGbs: a.MemoryPerOracleComputeUnitInGbs, + NcharacterSet: a.NcharacterSet, + NextLongTermBackupTimeStamp: a.NextLongTermBackupTimeStamp, + OciURL: a.OciURL, + Ocid: a.Ocid, + OpenMode: a.OpenMode, + OperationsInsightsStatus: a.OperationsInsightsStatus, + PeerDbID: a.PeerDbID, + PeerDbIDs: a.PeerDbIDs, + PermissionLevel: a.PermissionLevel, + PrivateEndpoint: a.PrivateEndpoint, + PrivateEndpointIP: a.PrivateEndpointIP, + PrivateEndpointLabel: a.PrivateEndpointLabel, + ProvisionableCpus: a.ProvisionableCpus, + ProvisioningState: a.ProvisioningState, + RemoteDisasterRecoveryConfiguration: a.RemoteDisasterRecoveryConfiguration, + Role: a.Role, + SQLWebDeveloperURL: a.SQLWebDeveloperURL, + ScheduledOperations: a.ScheduledOperations, + ServiceConsoleURL: a.ServiceConsoleURL, + SubnetID: a.SubnetID, + SupportedRegionsToCloneTo: a.SupportedRegionsToCloneTo, + TimeCreated: a.TimeCreated, + TimeDataGuardRoleChanged: a.TimeDataGuardRoleChanged, + TimeDeletionOfFreeAutonomousDatabase: a.TimeDeletionOfFreeAutonomousDatabase, + TimeDisasterRecoveryRoleChanged: a.TimeDisasterRecoveryRoleChanged, + TimeLocalDataGuardEnabled: a.TimeLocalDataGuardEnabled, + TimeMaintenanceBegin: a.TimeMaintenanceBegin, + TimeMaintenanceEnd: a.TimeMaintenanceEnd, + TimeOfLastFailover: a.TimeOfLastFailover, + TimeOfLastRefresh: a.TimeOfLastRefresh, + TimeOfLastRefreshPoint: a.TimeOfLastRefreshPoint, + TimeOfLastSwitchover: a.TimeOfLastSwitchover, + TimeReclamationOfFreeAutonomousDatabase: a.TimeReclamationOfFreeAutonomousDatabase, + UsedDataStorageSizeInGbs: a.UsedDataStorageSizeInGbs, + UsedDataStorageSizeInTbs: a.UsedDataStorageSizeInTbs, + VnetID: a.VnetID, + WhitelistedIPs: a.WhitelistedIPs, + } +} + +// AutonomousDatabaseFromBackupTimestampProperties - Autonomous Database From Backup Timestamp resource model. +type AutonomousDatabaseFromBackupTimestampProperties struct { + // REQUIRED; The Autonomous Database clone type. + CloneType *CloneType + + // CONSTANT; Database type to be created. + // Field has constant value DataBaseTypeCloneFromBackupTimestamp, any specified value is ignored. + DataBaseType *DataBaseType + + // CONSTANT; The source of the database. + // Field has constant value SourceTypeBackupFromTimestamp, any specified value is ignored. + Source *SourceType + + // REQUIRED; The ID of the source Autonomous Database that you will clone to create a new Autonomous Database. + SourceID *string + + // Admin password. + AdminPassword *string + + // Autonomous Database ID + AutonomousDatabaseID *string + + // The maintenance schedule type of the Autonomous Database Serverless. + AutonomousMaintenanceScheduleType *AutonomousMaintenanceScheduleType + + // Retention period, in days, for long-term backups + BackupRetentionPeriodInDays *int32 + + // The number of CPU cores to be made available to the database. + CPUCoreCount *int32 + + // The character set for the autonomous database. + CharacterSet *string + + // The compute amount (CPUs) available to the database. + ComputeCount *float32 + + // The compute model of the Autonomous Database. + ComputeModel *ComputeModel + + // Customer Contacts. + CustomerContacts []*CustomerContact + + // The size, in gigabytes, of the data volume that will be created and attached to the database. + DataStorageSizeInGbs *int32 + + // The quantity of data in the database, in terabytes. + DataStorageSizeInTbs *int32 + + // The Oracle Database Edition that applies to the Autonomous databases. + DatabaseEdition *DatabaseEditionType + + // A valid Oracle Database version for Autonomous Database. + DbVersion *string + + // The Autonomous Database workload type + DbWorkload *WorkloadType + + // The user-friendly name for the Autonomous Database. + DisplayName *string + + // Indicates if auto scaling is enabled for the Autonomous Database CPU core count. + IsAutoScalingEnabled *bool + + // Indicates if auto scaling is enabled for the Autonomous Database storage. + IsAutoScalingForStorageEnabled *bool + + // Indicates whether the Autonomous Database has local or called in-region Data Guard enabled. + IsLocalDataGuardEnabled *bool + + // Specifies if the Autonomous Database requires mTLS connections. + IsMtlsConnectionRequired *bool + + // Specifies if the Autonomous Database preview version is being provisioned. + IsPreviewVersionWithServiceTermsAccepted *bool + + // The Oracle license model that applies to the Oracle Autonomous Database. The default is LICENSE_INCLUDED. + LicenseModel *LicenseModel + + // Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to which Automatic Failover + // will be triggered when necessary for a Local Autonomous Data Guard + LocalAdgAutoFailoverMaxDataLossLimit *int32 + + // Details for the long-term backup schedule. + LongTermBackupSchedule *LongTermBackUpScheduleDetails + + // The character set for the Autonomous Database. + NcharacterSet *string + + // Indicates the Autonomous Database mode. + OpenMode *OpenModeType + + // The Azure resource ID of the Disaster Recovery peer database, which is located in a different region from the current peer + // database. + PeerDbID *string + + // The Autonomous Database permission level. + PermissionLevel *PermissionLevelType + + // The private endpoint Ip address for the resource. + PrivateEndpointIP *string + + // The resource's private endpoint label. + PrivateEndpointLabel *string + + // The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous Data Guard is enabled. + Role *RoleType + + // The list of scheduled operations. + ScheduledOperations *ScheduledOperationsType + + // Client subnet + SubnetID *string + + // The timestamp specified for the point-in-time clone of the source Autonomous Database. The timestamp must be in the past. + Timestamp *time.Time + + // Clone from latest available backup timestamp. + UseLatestAvailableBackupTimeStamp *bool + + // VNET for network connectivity + VnetID *string + + // The client IP access control list (ACL). This is an array of CIDR notations and/or IP addresses. Values should be separate + // strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25'] + WhitelistedIPs []*string + + // READ-ONLY; The current amount of storage in use for user and system data, in terabytes (TB). + ActualUsedDataStorageSizeInTbs *float64 + + // READ-ONLY; The amount of storage currently allocated for the database tables and billed for, rounded up. + AllocatedStorageSizeInTbs *float64 + + // READ-ONLY; Information about Oracle APEX Application Development. + ApexDetails *ApexDetailsType + + // READ-ONLY; List of Oracle Database versions available for a database upgrade. If there are no version upgrades available, + // this list is empty. + AvailableUpgradeVersions []*string + + // READ-ONLY; The connection string used to connect to the Autonomous Database. + ConnectionStrings *ConnectionStringType + + // READ-ONLY; The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser from a Compute + // instance within your VCN or that has a direct connection to your VCN. + ConnectionUrls *ConnectionURLType + + // READ-ONLY; Status of the Data Safe registration for this Autonomous Database. + DataSafeStatus *DataSafeStatusType + + // READ-ONLY; Indicates the number of seconds of data loss for a Data Guard failover. + FailedDataRecoveryInSeconds *int32 + + // READ-ONLY; The area assigned to In-Memory tables in Autonomous Database. + InMemoryAreaInGbs *int32 + + // READ-ONLY; Indicates if the Autonomous Database version is a preview version. + IsPreview *bool + + // READ-ONLY; Indicates whether the Autonomous Database has Cross Region Data Guard enabled. + IsRemoteDataGuardEnabled *bool + + // READ-ONLY; Additional information about the current lifecycle state. + LifecycleDetails *string + + // READ-ONLY; Views lifecycleState + LifecycleState *AutonomousDatabaseLifecycleState + + // READ-ONLY; Indicates the local disaster recovery (DR) type of the Autonomous Database Serverless instance.Autonomous Data + // Guard (ADG) DR type provides business critical DR with a faster recovery time objective (RTO) during failover or switchover.Backup-based + // DR type provides lower cost DR with a slower RTO during failover or switchover. + LocalDisasterRecoveryType *DisasterRecoveryType + + // READ-ONLY; Local Autonomous Disaster Recovery standby database details. + LocalStandbyDb *AutonomousDatabaseStandbySummary + + // READ-ONLY; The amount of memory (in GBs) enabled per ECPU or OCPU. + MemoryPerOracleComputeUnitInGbs *int32 + + // READ-ONLY; The date and time when the next long-term backup would be created. + NextLongTermBackupTimeStamp *time.Time + + // READ-ONLY; HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + OciURL *string + + // READ-ONLY; Database ocid + Ocid *string + + // READ-ONLY; Status of Operations Insights for this Autonomous Database. + OperationsInsightsStatus *OperationsInsightsStatusType + + // READ-ONLY; The list of Azure resource IDs of standby databases located in Autonomous Data Guard remote regions that are + // associated with the source database. Note that for Autonomous Database Serverless instances, standby databases located + // in the same region as the source primary database do not have Azure IDs. + PeerDbIDs []*string + + // READ-ONLY; The private endpoint for the resource. + PrivateEndpoint *string + + // READ-ONLY; An array of CPU values that an Autonomous Database can be scaled to. + ProvisionableCpus []*int32 + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; Indicates remote disaster recovery configuration + RemoteDisasterRecoveryConfiguration *DisasterRecoveryConfigurationDetails + + // READ-ONLY; The SQL Web Developer URL for the Oracle Autonomous Database. + SQLWebDeveloperURL *string + + // READ-ONLY; The URL of the Service Console for the Autonomous Database. + ServiceConsoleURL *string + + // READ-ONLY; The list of regions that support the creation of an Autonomous Database clone or an Autonomous Data Guard standby + // database. + SupportedRegionsToCloneTo []*string + + // READ-ONLY; The date and time that the database was created. + TimeCreated *time.Time + + // READ-ONLY; The date and time the Autonomous Data Guard role was switched for the Autonomous Database. + TimeDataGuardRoleChanged *string + + // READ-ONLY; The date and time the Always Free database will be automatically deleted because of inactivity. + TimeDeletionOfFreeAutonomousDatabase *string + + // READ-ONLY; The date and time the Disaster Recovery role was switched for the standby Autonomous Database. + TimeDisasterRecoveryRoleChanged *time.Time + + // READ-ONLY; The date and time that Autonomous Data Guard was enabled for an Autonomous Database where the standby was provisioned + // in the same region as the primary database. + TimeLocalDataGuardEnabled *string + + // READ-ONLY; The date and time when maintenance will begin. + TimeMaintenanceBegin *time.Time + + // READ-ONLY; The date and time when maintenance will end. + TimeMaintenanceEnd *time.Time + + // READ-ONLY; The timestamp of the last failover operation. + TimeOfLastFailover *string + + // READ-ONLY; The date and time when last refresh happened. + TimeOfLastRefresh *string + + // READ-ONLY; The refresh point timestamp (UTC). + TimeOfLastRefreshPoint *string + + // READ-ONLY; The timestamp of the last switchover operation for the Autonomous Database. + TimeOfLastSwitchover *string + + // READ-ONLY; The date and time the Always Free database will be stopped because of inactivity. + TimeReclamationOfFreeAutonomousDatabase *string + + // READ-ONLY; The storage space consumed by Autonomous Database in GBs. + UsedDataStorageSizeInGbs *int32 + + // READ-ONLY; The amount of storage that has been used, in terabytes. + UsedDataStorageSizeInTbs *int32 +} + +// GetAutonomousDatabaseBaseProperties implements the AutonomousDatabaseBasePropertiesClassification interface for type AutonomousDatabaseFromBackupTimestampProperties. +func (a *AutonomousDatabaseFromBackupTimestampProperties) GetAutonomousDatabaseBaseProperties() *AutonomousDatabaseBaseProperties { + return &AutonomousDatabaseBaseProperties{ + ActualUsedDataStorageSizeInTbs: a.ActualUsedDataStorageSizeInTbs, + AdminPassword: a.AdminPassword, + AllocatedStorageSizeInTbs: a.AllocatedStorageSizeInTbs, + ApexDetails: a.ApexDetails, + AutonomousDatabaseID: a.AutonomousDatabaseID, + AutonomousMaintenanceScheduleType: a.AutonomousMaintenanceScheduleType, + AvailableUpgradeVersions: a.AvailableUpgradeVersions, + BackupRetentionPeriodInDays: a.BackupRetentionPeriodInDays, + CPUCoreCount: a.CPUCoreCount, + CharacterSet: a.CharacterSet, + ComputeCount: a.ComputeCount, + ComputeModel: a.ComputeModel, + ConnectionStrings: a.ConnectionStrings, + ConnectionUrls: a.ConnectionUrls, + CustomerContacts: a.CustomerContacts, + DataBaseType: a.DataBaseType, + DataSafeStatus: a.DataSafeStatus, + DataStorageSizeInGbs: a.DataStorageSizeInGbs, + DataStorageSizeInTbs: a.DataStorageSizeInTbs, + DatabaseEdition: a.DatabaseEdition, + DbVersion: a.DbVersion, + DbWorkload: a.DbWorkload, + DisplayName: a.DisplayName, + FailedDataRecoveryInSeconds: a.FailedDataRecoveryInSeconds, + InMemoryAreaInGbs: a.InMemoryAreaInGbs, + IsAutoScalingEnabled: a.IsAutoScalingEnabled, + IsAutoScalingForStorageEnabled: a.IsAutoScalingForStorageEnabled, + IsLocalDataGuardEnabled: a.IsLocalDataGuardEnabled, + IsMtlsConnectionRequired: a.IsMtlsConnectionRequired, + IsPreview: a.IsPreview, + IsPreviewVersionWithServiceTermsAccepted: a.IsPreviewVersionWithServiceTermsAccepted, + IsRemoteDataGuardEnabled: a.IsRemoteDataGuardEnabled, + LicenseModel: a.LicenseModel, + LifecycleDetails: a.LifecycleDetails, + LifecycleState: a.LifecycleState, + LocalAdgAutoFailoverMaxDataLossLimit: a.LocalAdgAutoFailoverMaxDataLossLimit, + LocalDisasterRecoveryType: a.LocalDisasterRecoveryType, + LocalStandbyDb: a.LocalStandbyDb, + LongTermBackupSchedule: a.LongTermBackupSchedule, + MemoryPerOracleComputeUnitInGbs: a.MemoryPerOracleComputeUnitInGbs, + NcharacterSet: a.NcharacterSet, + NextLongTermBackupTimeStamp: a.NextLongTermBackupTimeStamp, + OciURL: a.OciURL, + Ocid: a.Ocid, + OpenMode: a.OpenMode, + OperationsInsightsStatus: a.OperationsInsightsStatus, + PeerDbID: a.PeerDbID, + PeerDbIDs: a.PeerDbIDs, + PermissionLevel: a.PermissionLevel, + PrivateEndpoint: a.PrivateEndpoint, + PrivateEndpointIP: a.PrivateEndpointIP, + PrivateEndpointLabel: a.PrivateEndpointLabel, + ProvisionableCpus: a.ProvisionableCpus, + ProvisioningState: a.ProvisioningState, + RemoteDisasterRecoveryConfiguration: a.RemoteDisasterRecoveryConfiguration, + Role: a.Role, + SQLWebDeveloperURL: a.SQLWebDeveloperURL, + ScheduledOperations: a.ScheduledOperations, + ServiceConsoleURL: a.ServiceConsoleURL, + SubnetID: a.SubnetID, + SupportedRegionsToCloneTo: a.SupportedRegionsToCloneTo, + TimeCreated: a.TimeCreated, + TimeDataGuardRoleChanged: a.TimeDataGuardRoleChanged, + TimeDeletionOfFreeAutonomousDatabase: a.TimeDeletionOfFreeAutonomousDatabase, + TimeDisasterRecoveryRoleChanged: a.TimeDisasterRecoveryRoleChanged, + TimeLocalDataGuardEnabled: a.TimeLocalDataGuardEnabled, + TimeMaintenanceBegin: a.TimeMaintenanceBegin, + TimeMaintenanceEnd: a.TimeMaintenanceEnd, + TimeOfLastFailover: a.TimeOfLastFailover, + TimeOfLastRefresh: a.TimeOfLastRefresh, + TimeOfLastRefreshPoint: a.TimeOfLastRefreshPoint, + TimeOfLastSwitchover: a.TimeOfLastSwitchover, + TimeReclamationOfFreeAutonomousDatabase: a.TimeReclamationOfFreeAutonomousDatabase, + UsedDataStorageSizeInGbs: a.UsedDataStorageSizeInGbs, + UsedDataStorageSizeInTbs: a.UsedDataStorageSizeInTbs, + VnetID: a.VnetID, + WhitelistedIPs: a.WhitelistedIPs, + } +} + +// AutonomousDatabaseListResult - The response of a AutonomousDatabase list operation. +type AutonomousDatabaseListResult struct { + // REQUIRED; The AutonomousDatabase items on this page + Value []*AutonomousDatabase + + // The link to the next page of items + NextLink *string +} + +// AutonomousDatabaseNationalCharacterSets resource definition +type AutonomousDatabaseNationalCharacterSet struct { + // The resource-specific properties for this resource. + Properties *AutonomousDatabaseNationalCharacterSetProperties + + // READ-ONLY; AutonomousDatabaseNationalCharacterSets name + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// AutonomousDatabaseNationalCharacterSetListResult - The response of a AutonomousDatabaseNationalCharacterSet list operation. +type AutonomousDatabaseNationalCharacterSetListResult struct { + // REQUIRED; The AutonomousDatabaseNationalCharacterSet items on this page + Value []*AutonomousDatabaseNationalCharacterSet + + // The link to the next page of items + NextLink *string +} + +// AutonomousDatabaseNationalCharacterSetProperties - AutonomousDatabaseNationalCharacterSet resource model +type AutonomousDatabaseNationalCharacterSetProperties struct { + // REQUIRED; The Oracle Autonomous Database supported national character sets. + CharacterSet *string +} + +// AutonomousDatabaseProperties - Autonomous Database resource model. +type AutonomousDatabaseProperties struct { + // CONSTANT; Database type to be created. + // Field has constant value DataBaseTypeRegular, any specified value is ignored. + DataBaseType *DataBaseType + + // Admin password. + AdminPassword *string + + // Autonomous Database ID + AutonomousDatabaseID *string + + // The maintenance schedule type of the Autonomous Database Serverless. + AutonomousMaintenanceScheduleType *AutonomousMaintenanceScheduleType + + // Retention period, in days, for long-term backups + BackupRetentionPeriodInDays *int32 + + // The number of CPU cores to be made available to the database. + CPUCoreCount *int32 + + // The character set for the autonomous database. + CharacterSet *string + + // The compute amount (CPUs) available to the database. + ComputeCount *float32 + + // The compute model of the Autonomous Database. + ComputeModel *ComputeModel + + // Customer Contacts. + CustomerContacts []*CustomerContact + + // The size, in gigabytes, of the data volume that will be created and attached to the database. + DataStorageSizeInGbs *int32 + + // The quantity of data in the database, in terabytes. + DataStorageSizeInTbs *int32 + + // The Oracle Database Edition that applies to the Autonomous databases. + DatabaseEdition *DatabaseEditionType + + // A valid Oracle Database version for Autonomous Database. + DbVersion *string + + // The Autonomous Database workload type + DbWorkload *WorkloadType + + // The user-friendly name for the Autonomous Database. + DisplayName *string + + // Indicates if auto scaling is enabled for the Autonomous Database CPU core count. + IsAutoScalingEnabled *bool + + // Indicates if auto scaling is enabled for the Autonomous Database storage. + IsAutoScalingForStorageEnabled *bool + + // Indicates whether the Autonomous Database has local or called in-region Data Guard enabled. + IsLocalDataGuardEnabled *bool + + // Specifies if the Autonomous Database requires mTLS connections. + IsMtlsConnectionRequired *bool + + // Specifies if the Autonomous Database preview version is being provisioned. + IsPreviewVersionWithServiceTermsAccepted *bool + + // The Oracle license model that applies to the Oracle Autonomous Database. The default is LICENSE_INCLUDED. + LicenseModel *LicenseModel + + // Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to which Automatic Failover + // will be triggered when necessary for a Local Autonomous Data Guard + LocalAdgAutoFailoverMaxDataLossLimit *int32 + + // Details for the long-term backup schedule. + LongTermBackupSchedule *LongTermBackUpScheduleDetails + + // The character set for the Autonomous Database. + NcharacterSet *string + + // Indicates the Autonomous Database mode. + OpenMode *OpenModeType + + // The Azure resource ID of the Disaster Recovery peer database, which is located in a different region from the current peer + // database. + PeerDbID *string + + // The Autonomous Database permission level. + PermissionLevel *PermissionLevelType + + // The private endpoint Ip address for the resource. + PrivateEndpointIP *string + + // The resource's private endpoint label. + PrivateEndpointLabel *string + + // The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous Data Guard is enabled. + Role *RoleType + + // The list of scheduled operations. + ScheduledOperations *ScheduledOperationsType + + // Client subnet + SubnetID *string + + // VNET for network connectivity + VnetID *string + + // The client IP access control list (ACL). This is an array of CIDR notations and/or IP addresses. Values should be separate + // strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25'] + WhitelistedIPs []*string + + // READ-ONLY; The current amount of storage in use for user and system data, in terabytes (TB). + ActualUsedDataStorageSizeInTbs *float64 + + // READ-ONLY; The amount of storage currently allocated for the database tables and billed for, rounded up. + AllocatedStorageSizeInTbs *float64 + + // READ-ONLY; Information about Oracle APEX Application Development. + ApexDetails *ApexDetailsType + + // READ-ONLY; List of Oracle Database versions available for a database upgrade. If there are no version upgrades available, + // this list is empty. + AvailableUpgradeVersions []*string + + // READ-ONLY; The connection string used to connect to the Autonomous Database. + ConnectionStrings *ConnectionStringType + + // READ-ONLY; The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser from a Compute + // instance within your VCN or that has a direct connection to your VCN. + ConnectionUrls *ConnectionURLType + + // READ-ONLY; Status of the Data Safe registration for this Autonomous Database. + DataSafeStatus *DataSafeStatusType + + // READ-ONLY; Indicates the number of seconds of data loss for a Data Guard failover. + FailedDataRecoveryInSeconds *int32 + + // READ-ONLY; The area assigned to In-Memory tables in Autonomous Database. + InMemoryAreaInGbs *int32 + + // READ-ONLY; Indicates if the Autonomous Database version is a preview version. + IsPreview *bool + + // READ-ONLY; Indicates whether the Autonomous Database has Cross Region Data Guard enabled. + IsRemoteDataGuardEnabled *bool + + // READ-ONLY; Additional information about the current lifecycle state. + LifecycleDetails *string + + // READ-ONLY; Views lifecycleState + LifecycleState *AutonomousDatabaseLifecycleState + + // READ-ONLY; Indicates the local disaster recovery (DR) type of the Autonomous Database Serverless instance.Autonomous Data + // Guard (ADG) DR type provides business critical DR with a faster recovery time objective (RTO) during failover or switchover.Backup-based + // DR type provides lower cost DR with a slower RTO during failover or switchover. + LocalDisasterRecoveryType *DisasterRecoveryType + + // READ-ONLY; Local Autonomous Disaster Recovery standby database details. + LocalStandbyDb *AutonomousDatabaseStandbySummary + + // READ-ONLY; The amount of memory (in GBs) enabled per ECPU or OCPU. + MemoryPerOracleComputeUnitInGbs *int32 + + // READ-ONLY; The date and time when the next long-term backup would be created. + NextLongTermBackupTimeStamp *time.Time + + // READ-ONLY; HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + OciURL *string + + // READ-ONLY; Database ocid + Ocid *string + + // READ-ONLY; Status of Operations Insights for this Autonomous Database. + OperationsInsightsStatus *OperationsInsightsStatusType + + // READ-ONLY; The list of Azure resource IDs of standby databases located in Autonomous Data Guard remote regions that are + // associated with the source database. Note that for Autonomous Database Serverless instances, standby databases located + // in the same region as the source primary database do not have Azure IDs. + PeerDbIDs []*string + + // READ-ONLY; The private endpoint for the resource. + PrivateEndpoint *string + + // READ-ONLY; An array of CPU values that an Autonomous Database can be scaled to. + ProvisionableCpus []*int32 + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; Indicates remote disaster recovery configuration + RemoteDisasterRecoveryConfiguration *DisasterRecoveryConfigurationDetails + + // READ-ONLY; The SQL Web Developer URL for the Oracle Autonomous Database. + SQLWebDeveloperURL *string + + // READ-ONLY; The URL of the Service Console for the Autonomous Database. + ServiceConsoleURL *string + + // READ-ONLY; The list of regions that support the creation of an Autonomous Database clone or an Autonomous Data Guard standby + // database. + SupportedRegionsToCloneTo []*string + + // READ-ONLY; The date and time that the database was created. + TimeCreated *time.Time + + // READ-ONLY; The date and time the Autonomous Data Guard role was switched for the Autonomous Database. + TimeDataGuardRoleChanged *string + + // READ-ONLY; The date and time the Always Free database will be automatically deleted because of inactivity. + TimeDeletionOfFreeAutonomousDatabase *string + + // READ-ONLY; The date and time the Disaster Recovery role was switched for the standby Autonomous Database. + TimeDisasterRecoveryRoleChanged *time.Time + + // READ-ONLY; The date and time that Autonomous Data Guard was enabled for an Autonomous Database where the standby was provisioned + // in the same region as the primary database. + TimeLocalDataGuardEnabled *string + + // READ-ONLY; The date and time when maintenance will begin. + TimeMaintenanceBegin *time.Time + + // READ-ONLY; The date and time when maintenance will end. + TimeMaintenanceEnd *time.Time + + // READ-ONLY; The timestamp of the last failover operation. + TimeOfLastFailover *string + + // READ-ONLY; The date and time when last refresh happened. + TimeOfLastRefresh *string + + // READ-ONLY; The refresh point timestamp (UTC). + TimeOfLastRefreshPoint *string + + // READ-ONLY; The timestamp of the last switchover operation for the Autonomous Database. + TimeOfLastSwitchover *string + + // READ-ONLY; The date and time the Always Free database will be stopped because of inactivity. + TimeReclamationOfFreeAutonomousDatabase *string + + // READ-ONLY; The storage space consumed by Autonomous Database in GBs. + UsedDataStorageSizeInGbs *int32 + + // READ-ONLY; The amount of storage that has been used, in terabytes. + UsedDataStorageSizeInTbs *int32 +} + +// GetAutonomousDatabaseBaseProperties implements the AutonomousDatabaseBasePropertiesClassification interface for type AutonomousDatabaseProperties. +func (a *AutonomousDatabaseProperties) GetAutonomousDatabaseBaseProperties() *AutonomousDatabaseBaseProperties { + return &AutonomousDatabaseBaseProperties{ + ActualUsedDataStorageSizeInTbs: a.ActualUsedDataStorageSizeInTbs, + AdminPassword: a.AdminPassword, + AllocatedStorageSizeInTbs: a.AllocatedStorageSizeInTbs, + ApexDetails: a.ApexDetails, + AutonomousDatabaseID: a.AutonomousDatabaseID, + AutonomousMaintenanceScheduleType: a.AutonomousMaintenanceScheduleType, + AvailableUpgradeVersions: a.AvailableUpgradeVersions, + BackupRetentionPeriodInDays: a.BackupRetentionPeriodInDays, + CPUCoreCount: a.CPUCoreCount, + CharacterSet: a.CharacterSet, + ComputeCount: a.ComputeCount, + ComputeModel: a.ComputeModel, + ConnectionStrings: a.ConnectionStrings, + ConnectionUrls: a.ConnectionUrls, + CustomerContacts: a.CustomerContacts, + DataBaseType: a.DataBaseType, + DataSafeStatus: a.DataSafeStatus, + DataStorageSizeInGbs: a.DataStorageSizeInGbs, + DataStorageSizeInTbs: a.DataStorageSizeInTbs, + DatabaseEdition: a.DatabaseEdition, + DbVersion: a.DbVersion, + DbWorkload: a.DbWorkload, + DisplayName: a.DisplayName, + FailedDataRecoveryInSeconds: a.FailedDataRecoveryInSeconds, + InMemoryAreaInGbs: a.InMemoryAreaInGbs, + IsAutoScalingEnabled: a.IsAutoScalingEnabled, + IsAutoScalingForStorageEnabled: a.IsAutoScalingForStorageEnabled, + IsLocalDataGuardEnabled: a.IsLocalDataGuardEnabled, + IsMtlsConnectionRequired: a.IsMtlsConnectionRequired, + IsPreview: a.IsPreview, + IsPreviewVersionWithServiceTermsAccepted: a.IsPreviewVersionWithServiceTermsAccepted, + IsRemoteDataGuardEnabled: a.IsRemoteDataGuardEnabled, + LicenseModel: a.LicenseModel, + LifecycleDetails: a.LifecycleDetails, + LifecycleState: a.LifecycleState, + LocalAdgAutoFailoverMaxDataLossLimit: a.LocalAdgAutoFailoverMaxDataLossLimit, + LocalDisasterRecoveryType: a.LocalDisasterRecoveryType, + LocalStandbyDb: a.LocalStandbyDb, + LongTermBackupSchedule: a.LongTermBackupSchedule, + MemoryPerOracleComputeUnitInGbs: a.MemoryPerOracleComputeUnitInGbs, + NcharacterSet: a.NcharacterSet, + NextLongTermBackupTimeStamp: a.NextLongTermBackupTimeStamp, + OciURL: a.OciURL, + Ocid: a.Ocid, + OpenMode: a.OpenMode, + OperationsInsightsStatus: a.OperationsInsightsStatus, + PeerDbID: a.PeerDbID, + PeerDbIDs: a.PeerDbIDs, + PermissionLevel: a.PermissionLevel, + PrivateEndpoint: a.PrivateEndpoint, + PrivateEndpointIP: a.PrivateEndpointIP, + PrivateEndpointLabel: a.PrivateEndpointLabel, + ProvisionableCpus: a.ProvisionableCpus, + ProvisioningState: a.ProvisioningState, + RemoteDisasterRecoveryConfiguration: a.RemoteDisasterRecoveryConfiguration, + Role: a.Role, + SQLWebDeveloperURL: a.SQLWebDeveloperURL, + ScheduledOperations: a.ScheduledOperations, + ServiceConsoleURL: a.ServiceConsoleURL, + SubnetID: a.SubnetID, + SupportedRegionsToCloneTo: a.SupportedRegionsToCloneTo, + TimeCreated: a.TimeCreated, + TimeDataGuardRoleChanged: a.TimeDataGuardRoleChanged, + TimeDeletionOfFreeAutonomousDatabase: a.TimeDeletionOfFreeAutonomousDatabase, + TimeDisasterRecoveryRoleChanged: a.TimeDisasterRecoveryRoleChanged, + TimeLocalDataGuardEnabled: a.TimeLocalDataGuardEnabled, + TimeMaintenanceBegin: a.TimeMaintenanceBegin, + TimeMaintenanceEnd: a.TimeMaintenanceEnd, + TimeOfLastFailover: a.TimeOfLastFailover, + TimeOfLastRefresh: a.TimeOfLastRefresh, + TimeOfLastRefreshPoint: a.TimeOfLastRefreshPoint, + TimeOfLastSwitchover: a.TimeOfLastSwitchover, + TimeReclamationOfFreeAutonomousDatabase: a.TimeReclamationOfFreeAutonomousDatabase, + UsedDataStorageSizeInGbs: a.UsedDataStorageSizeInGbs, + UsedDataStorageSizeInTbs: a.UsedDataStorageSizeInTbs, + VnetID: a.VnetID, + WhitelistedIPs: a.WhitelistedIPs, + } +} + +// AutonomousDatabaseStandbySummary - Autonomous Disaster Recovery standby database details. +type AutonomousDatabaseStandbySummary struct { + // The amount of time, in seconds, that the data of the standby database lags the data of the primary database. Can be used + // to determine the potential data loss in the event of a failover. + LagTimeInSeconds *int32 + + // Additional information about the current lifecycle state. + LifecycleDetails *string + + // The current state of the Autonomous Database. + LifecycleState *AutonomousDatabaseLifecycleState + + // The date and time the Autonomous Data Guard role was switched for the standby Autonomous Database. + TimeDataGuardRoleChanged *string + + // The date and time the Disaster Recovery role was switched for the standby Autonomous Database. + TimeDisasterRecoveryRoleChanged *string +} + +// AutonomousDatabaseUpdate - The type used for update operations of the AutonomousDatabase. +type AutonomousDatabaseUpdate struct { + // The resource-specific properties for this resource. + Properties *AutonomousDatabaseUpdateProperties + + // Resource tags. + Tags map[string]*string +} + +// AutonomousDatabaseUpdateProperties - The updatable properties of the AutonomousDatabase. +type AutonomousDatabaseUpdateProperties struct { + // Admin password. + AdminPassword *string + + // The maintenance schedule type of the Autonomous Database Serverless. + AutonomousMaintenanceScheduleType *AutonomousMaintenanceScheduleType + + // Retention period, in days, for long-term backups + BackupRetentionPeriodInDays *int32 + + // The number of CPU cores to be made available to the database. + CPUCoreCount *int32 + + // The compute amount (CPUs) available to the database. + ComputeCount *float32 + + // Customer Contacts. + CustomerContacts []*CustomerContact + + // The size, in gigabytes, of the data volume that will be created and attached to the database. + DataStorageSizeInGbs *int32 + + // The quantity of data in the database, in terabytes. + DataStorageSizeInTbs *int32 + + // The Oracle Database Edition that applies to the Autonomous databases. + DatabaseEdition *DatabaseEditionType + + // The user-friendly name for the Autonomous Database. + DisplayName *string + + // Indicates if auto scaling is enabled for the Autonomous Database CPU core count. + IsAutoScalingEnabled *bool + + // Indicates if auto scaling is enabled for the Autonomous Database storage. + IsAutoScalingForStorageEnabled *bool + + // Indicates whether the Autonomous Database has local or called in-region Data Guard enabled. + IsLocalDataGuardEnabled *bool + + // Specifies if the Autonomous Database requires mTLS connections. + IsMtlsConnectionRequired *bool + + // The Oracle license model that applies to the Oracle Autonomous Database. The default is LICENSE_INCLUDED. + LicenseModel *LicenseModel + + // Parameter that allows users to select an acceptable maximum data loss limit in seconds, up to which Automatic Failover + // will be triggered when necessary for a Local Autonomous Data Guard + LocalAdgAutoFailoverMaxDataLossLimit *int32 + + // Details for the long-term backup schedule. + LongTermBackupSchedule *LongTermBackUpScheduleDetails + + // Indicates the Autonomous Database mode. + OpenMode *OpenModeType + + // The Azure resource ID of the Disaster Recovery peer database, which is located in a different region from the current peer + // database. + PeerDbID *string + + // The Autonomous Database permission level. + PermissionLevel *PermissionLevelType + + // The Data Guard role of the Autonomous Container Database or Autonomous Database, if Autonomous Data Guard is enabled. + Role *RoleType + + // The list of scheduled operations. + ScheduledOperations *ScheduledOperationsTypeUpdate + + // The client IP access control list (ACL). This is an array of CIDR notations and/or IP addresses. Values should be separate + // strings, separated by commas. Example: ['1.1.1.1','1.1.1.0/24','1.1.2.25'] + WhitelistedIPs []*string +} + +// AutonomousDatabaseWalletFile - Autonomous Database Wallet File resource model. +type AutonomousDatabaseWalletFile struct { + // REQUIRED; The base64 encoded wallet files + WalletFiles *string +} + +// AutonomousDbVersion resource definition +type AutonomousDbVersion struct { + // The resource-specific properties for this resource. + Properties *AutonomousDbVersionProperties + + // READ-ONLY; AutonomousDbVersion name + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// AutonomousDbVersionListResult - The response of a AutonomousDbVersion list operation. +type AutonomousDbVersionListResult struct { + // REQUIRED; The AutonomousDbVersion items on this page + Value []*AutonomousDbVersion + + // The link to the next page of items + NextLink *string +} + +// AutonomousDbVersionProperties - AutonomousDbVersion resource model +type AutonomousDbVersionProperties struct { + // REQUIRED; Supported Autonomous Db versions. + Version *string + + // The Autonomous Database workload type + DbWorkload *WorkloadType + + // True if this version of the Oracle Database software's default is free. + IsDefaultForFree *bool + + // True if this version of the Oracle Database software's default is paid. + IsDefaultForPaid *bool + + // True if this version of the Oracle Database software can be used for Always-Free Autonomous Databases. + IsFreeTierEnabled *bool + + // True if this version of the Oracle Database software has payments enabled. + IsPaidEnabled *bool +} + +// AzureSubscriptions - Azure Subscriptions model +type AzureSubscriptions struct { + // REQUIRED; Azure Subscription Ids to be updated + AzureSubscriptionIDs []*string +} + +// CloudAccountDetails - Cloud Account Details model +type CloudAccountDetails struct { + // READ-ONLY; Cloud Account Home region + CloudAccountHomeRegion *string + + // READ-ONLY; Cloud Account name + CloudAccountName *string +} + +// CloudExadataInfrastructure resource definition +type CloudExadataInfrastructure struct { + // REQUIRED; The geo-location where the resource lives + Location *string + + // REQUIRED; CloudExadataInfrastructure zones + Zones []*string + + // The resource-specific properties for this resource. + Properties *CloudExadataInfrastructureProperties + + // Resource tags. + Tags map[string]*string + + // READ-ONLY; CloudExadataInfrastructure name + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// CloudExadataInfrastructureListResult - The response of a CloudExadataInfrastructure list operation. +type CloudExadataInfrastructureListResult struct { + // REQUIRED; The CloudExadataInfrastructure items on this page + Value []*CloudExadataInfrastructure + + // The link to the next page of items + NextLink *string +} + +// CloudExadataInfrastructureProperties - CloudExadataInfrastructure resource model +type CloudExadataInfrastructureProperties struct { + // REQUIRED; The name for the Exadata infrastructure. + DisplayName *string + + // REQUIRED; The model name of the cloud Exadata infrastructure resource. + Shape *string + + // The number of compute servers for the cloud Exadata infrastructure. + ComputeCount *int32 + + // The list of customer email addresses that receive information from Oracle about the specified OCI Database service resource. + // Oracle uses these email addresses to send notifications about planned and unplanned software maintenance updates, information + // about system hardware, and other information needed by administrators. Up to 10 email addresses can be added to the customer + // contacts for a cloud Exadata infrastructure instance. + CustomerContacts []*CustomerContact + + // The database server model type of the cloud Exadata infrastructure resource. + DatabaseServerType *string + + // maintenanceWindow property + MaintenanceWindow *MaintenanceWindow + + // The number of storage servers for the cloud Exadata infrastructure. + StorageCount *int32 + + // The storage server model type of the cloud Exadata infrastructure resource. + StorageServerType *string + + // READ-ONLY; The requested number of additional storage servers activated for the Exadata infrastructure. + ActivatedStorageCount *int32 + + // READ-ONLY; The requested number of additional storage servers for the Exadata infrastructure. + AdditionalStorageCount *int32 + + // READ-ONLY; The available storage can be allocated to the cloud Exadata infrastructure resource, in gigabytes (GB). + AvailableStorageSizeInGbs *int32 + + // READ-ONLY; The total number of CPU cores allocated. + CPUCount *int32 + + // READ-ONLY; The compute model of the Exadata Infrastructure + ComputeModel *ComputeModel + + // READ-ONLY; The quantity of data in the database, in terabytes. + DataStorageSizeInTbs *float64 + + // READ-ONLY; The local node storage to be allocated in GBs. + DbNodeStorageSizeInGbs *int32 + + // READ-ONLY; The software version of the database servers (dom0) in the Exadata infrastructure. + DbServerVersion *string + + // READ-ONLY; Defined file system configurations + DefinedFileSystemConfiguration []*DefinedFileSystemConfiguration + + // READ-ONLY; The estimated total time required in minutes for all patching operations (database server, storage server, and + // network switch patching). + EstimatedPatchingTime *EstimatedPatchingTime + + // READ-ONLY; The OCID of the last maintenance run. + LastMaintenanceRunID *string + + // READ-ONLY; Additional information about the current lifecycle state. + LifecycleDetails *string + + // READ-ONLY; CloudExadataInfrastructure lifecycle state + LifecycleState *CloudExadataInfrastructureLifecycleState + + // READ-ONLY; The total number of CPU cores available. + MaxCPUCount *int32 + + // READ-ONLY; The total available DATA disk group size. + MaxDataStorageInTbs *float64 + + // READ-ONLY; The total local node storage available in GBs. + MaxDbNodeStorageSizeInGbs *int32 + + // READ-ONLY; The total memory available in GBs. + MaxMemoryInGbs *int32 + + // READ-ONLY; The memory allocated in GBs. + MemorySizeInGbs *int32 + + // READ-ONLY; Monthly Db Server version + MonthlyDbServerVersion *string + + // READ-ONLY; Monthly Storage Server version + MonthlyStorageServerVersion *string + + // READ-ONLY; The OCID of the next maintenance run. + NextMaintenanceRunID *string + + // READ-ONLY; HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + OciURL *string + + // READ-ONLY; Exadata infra ocid + Ocid *string + + // READ-ONLY; CloudExadataInfrastructure provisioning state + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; The software version of the storage servers (cells) in the Exadata infrastructure. + StorageServerVersion *string + + // READ-ONLY; The date and time the cloud Exadata infrastructure resource was created. + TimeCreated *string + + // READ-ONLY; The total storage allocated to the cloud Exadata infrastructure resource, in gigabytes (GB). + TotalStorageSizeInGbs *int32 +} + +// CloudExadataInfrastructureUpdate - The type used for update operations of the CloudExadataInfrastructure. +type CloudExadataInfrastructureUpdate struct { + // The resource-specific properties for this resource. + Properties *CloudExadataInfrastructureUpdateProperties + + // Resource tags. + Tags map[string]*string + + // CloudExadataInfrastructure zones + Zones []*string +} + +// CloudExadataInfrastructureUpdateProperties - The updatable properties of the CloudExadataInfrastructure. +type CloudExadataInfrastructureUpdateProperties struct { + // The number of compute servers for the cloud Exadata infrastructure. + ComputeCount *int32 + + // The list of customer email addresses that receive information from Oracle about the specified OCI Database service resource. + // Oracle uses these email addresses to send notifications about planned and unplanned software maintenance updates, information + // about system hardware, and other information needed by administrators. Up to 10 email addresses can be added to the customer + // contacts for a cloud Exadata infrastructure instance. + CustomerContacts []*CustomerContact + + // The name for the Exadata infrastructure. + DisplayName *string + + // maintenanceWindow property + MaintenanceWindow *MaintenanceWindow + + // The number of storage servers for the cloud Exadata infrastructure. + StorageCount *int32 +} + +// CloudVMCluster - CloudVmCluster resource definition +type CloudVMCluster struct { + // REQUIRED; The geo-location where the resource lives + Location *string + + // The resource-specific properties for this resource. + Properties *CloudVMClusterProperties + + // Resource tags. + Tags map[string]*string + + // READ-ONLY; CloudVmCluster name + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// CloudVMClusterListResult - The response of a CloudVmCluster list operation. +type CloudVMClusterListResult struct { + // REQUIRED; The CloudVmCluster items on this page + Value []*CloudVMCluster + + // The link to the next page of items + NextLink *string +} + +// CloudVMClusterProperties - CloudVmCluster resource model +type CloudVMClusterProperties struct { + // REQUIRED; The number of CPU cores enabled on the cloud VM cluster. + CPUCoreCount *int32 + + // REQUIRED; Cloud Exadata Infrastructure ID + CloudExadataInfrastructureID *string + + // REQUIRED; Display Name + DisplayName *string + + // REQUIRED; Oracle Grid Infrastructure (GI) software version + GiVersion *string + + // REQUIRED; The hostname for the cloud VM cluster. + Hostname *string + + // REQUIRED; The public key portion of one or more key pairs used for SSH access to the cloud VM cluster. + SSHPublicKeys []*string + + // REQUIRED; Client subnet + SubnetID *string + + // REQUIRED; VNET for network connectivity + VnetID *string + + // Client OCI backup subnet CIDR, default is 192.168.252.0/22 + BackupSubnetCidr *string + + // The cluster name for cloud VM cluster. The cluster name must begin with an alphabetic character, and may contain hyphens + // (-). Underscores (_) are not permitted. The cluster name can be no longer than 11 characters and is not case sensitive. + ClusterName *string + + // The list of compute servers to be added to the cloud VM cluster. + ComputeNodes []*string + + // Indicates user preferences for the various diagnostic collection options for the VM cluster/Cloud VM cluster/VMBM DBCS. + DataCollectionOptions *DataCollectionOptions + + // The percentage assigned to DATA storage (user data and database files). The remaining percentage is assigned to RECO storage + // (database redo logs, archive logs, and recovery manager backups). Accepted values are 35, 40, 60 and 80. The default is + // 80 percent assigned to DATA storage. See [Storage Configuration](/Content/Database/Concepts/exaoverview.htm#Exadata) in + // the Exadata documentation for details on the impact of the configuration settings on storage. + DataStoragePercentage *int32 + + // The data disk group size to be allocated in TBs. + DataStorageSizeInTbs *float64 + + // The local node storage to be allocated in GBs. + DbNodeStorageSizeInGbs *int32 + + // The list of DB servers. + DbServers []*string + + // The domain name for the cloud VM cluster. + Domain *string + + // Array of mount path and size. + FileSystemConfigurationDetails []*FileSystemConfigurationDetails + + // If true, database backup on local Exadata storage is configured for the cloud VM cluster. If false, database backup on + // local Exadata storage is not available in the cloud VM cluster. + IsLocalBackupEnabled *bool + + // If true, sparse disk group is configured for the cloud VM cluster. If false, sparse disk group is not created. + IsSparseDiskgroupEnabled *bool + + // The Oracle license model that applies to the cloud VM cluster. The default is LICENSE_INCLUDED. + LicenseModel *LicenseModel + + // The memory to be allocated in GBs. + MemorySizeInGbs *int32 + + // CIDR blocks for additional NSG ingress rules. The VNET CIDRs used to provision the VM Cluster will be added by default. + NsgCidrs []*NsgCidr + + // The number of OCPU cores to enable on the cloud VM cluster. Only 1 decimal place is allowed for the fractional part. + OcpuCount *float32 + + // The TCP Single Client Access Name (SCAN) port. The default port is 1521. + ScanListenerPortTCP *int32 + + // The TCPS Single Client Access Name (SCAN) port. The default port is 2484. + ScanListenerPortTCPSSL *int32 + + // The data disk group size to be allocated in GBs per VM. + StorageSizeInGbs *int32 + + // Operating system version of the image. + SystemVersion *string + + // The time zone of the cloud VM cluster. For details, see [Exadata Infrastructure Time Zones](/Content/Database/References/timezones.htm). + TimeZone *string + + // The OCID of the zone the cloud VM cluster is associated with. + ZoneID *string + + // READ-ONLY; Cluster compartmentId + CompartmentID *string + + // READ-ONLY; The compute model of the VM Cluster. + ComputeModel *ComputeModel + + // READ-ONLY; The type of redundancy configured for the cloud Vm cluster. NORMAL is 2-way redundancy. HIGH is 3-way redundancy. + DiskRedundancy *DiskRedundancy + + // READ-ONLY; iormConfigCache details for cloud VM cluster. + IormConfigCache *ExadataIormConfig + + // READ-ONLY; The OCID of the last maintenance update history entry. + LastUpdateHistoryEntryID *string + + // READ-ONLY; Additional information about the current lifecycle state. + LifecycleDetails *string + + // READ-ONLY; CloudVmCluster lifecycle state + LifecycleState *CloudVMClusterLifecycleState + + // READ-ONLY; The port number configured for the listener on the cloud VM cluster. + ListenerPort *int64 + + // READ-ONLY; The number of nodes in the cloud VM cluster. + NodeCount *int32 + + // READ-ONLY; HTTPS link to OCI Network Security Group exposed to Azure Customer via the Azure Interface. + NsgURL *string + + // READ-ONLY; HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + OciURL *string + + // READ-ONLY; Cloud VM Cluster ocid + Ocid *string + + // READ-ONLY; CloudVmCluster provisioning state + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; The FQDN of the DNS record for the SCAN IP addresses that are associated with the cloud VM cluster. + ScanDNSName *string + + // READ-ONLY; The OCID of the DNS record for the SCAN IP addresses that are associated with the cloud VM cluster. + ScanDNSRecordID *string + + // READ-ONLY; The Single Client Access Name (SCAN) IP addresses associated with the cloud VM cluster. SCAN IP addresses are + // typically used for load balancing and are not assigned to any interface. Oracle Clusterware directs the requests to the + // appropriate nodes in the cluster. **Note:** For a single-node DB system, this list is empty. + ScanIPIDs []*string + + // READ-ONLY; The model name of the Exadata hardware running the cloud VM cluster. + Shape *string + + // READ-ONLY; Cluster subnet ocid + SubnetOcid *string + + // READ-ONLY; The date and time that the cloud VM cluster was created. + TimeCreated *time.Time + + // READ-ONLY; The virtual IP (VIP) addresses associated with the cloud VM cluster. The Cluster Ready Services (CRS) creates + // and maintains one VIP address for each node in the Exadata Cloud Service instance to enable failover. If one node fails, + // the VIP is reassigned to another active node in the cluster. **Note:** For a single-node DB system, this list is empty. + VipIDs []*string +} + +// CloudVMClusterUpdate - The type used for update operations of the CloudVmCluster. +type CloudVMClusterUpdate struct { + // The resource-specific properties for this resource. + Properties *CloudVMClusterUpdateProperties + + // Resource tags. + Tags map[string]*string +} + +// CloudVMClusterUpdateProperties - The updatable properties of the CloudVmCluster. +type CloudVMClusterUpdateProperties struct { + // The number of CPU cores enabled on the cloud VM cluster. + CPUCoreCount *int32 + + // The list of compute servers to be added to the cloud VM cluster. + ComputeNodes []*string + + // Indicates user preferences for the various diagnostic collection options for the VM cluster/Cloud VM cluster/VMBM DBCS. + DataCollectionOptions *DataCollectionOptions + + // The data disk group size to be allocated in TBs. + DataStorageSizeInTbs *float64 + + // The local node storage to be allocated in GBs. + DbNodeStorageSizeInGbs *int32 + + // Display Name + DisplayName *string + + // Array of mount path and size. + FileSystemConfigurationDetails []*FileSystemConfigurationDetails + + // The Oracle license model that applies to the cloud VM cluster. The default is LICENSE_INCLUDED. + LicenseModel *LicenseModel + + // The memory to be allocated in GBs. + MemorySizeInGbs *int32 + + // The number of OCPU cores to enable on the cloud VM cluster. Only 1 decimal place is allowed for the fractional part. + OcpuCount *float32 + + // The public key portion of one or more key pairs used for SSH access to the cloud VM cluster. + SSHPublicKeys []*string + + // The data disk group size to be allocated in GBs per VM. + StorageSizeInGbs *int32 +} + +// ConnectionStringType - Connection strings to connect to an Oracle Autonomous Database. +type ConnectionStringType struct { + // Returns all connection strings that can be used to connect to the Autonomous Database. + AllConnectionStrings *AllConnectionStringType + + // The database service provides the least level of resources to each SQL statement, but supports the most number of concurrent + // SQL statements. + Dedicated *string + + // The High database service provides the highest level of resources to each SQL statement resulting in the highest performance, + // but supports the fewest number of concurrent SQL statements. + High *string + + // The Low database service provides the least level of resources to each SQL statement, but supports the most number of concurrent + // SQL statements. + Low *string + + // The Medium database service provides a lower level of resources to each SQL statement potentially resulting a lower level + // of performance, but supports more concurrent SQL statements. + Medium *string + + // A list of connection string profiles to allow clients to group, filter and select connection string values based on structured + // metadata. + Profiles []*ProfileType +} + +// ConnectionURLType - The URLs for accessing Oracle Application Express (APEX) and SQL Developer Web with a browser from +// a Compute instance within your VCN or that has a direct connection to your VCN. +type ConnectionURLType struct { + // Oracle Application Express (APEX) URL. + ApexURL *string + + // The URL of the Database Transforms for the Autonomous Database. + DatabaseTransformsURL *string + + // The URL of the Graph Studio for the Autonomous Database. + GraphStudioURL *string + + // The URL of the Oracle Machine Learning (OML) Notebook for the Autonomous Database. + MachineLearningNotebookURL *string + + // The URL of the MongoDB API for the Autonomous Database. + MongoDbURL *string + + // The Oracle REST Data Services (ORDS) URL of the Web Access for the Autonomous Database. + OrdsURL *string + + // Oracle SQL Developer Web URL. + SQLDevWebURL *string +} + +// CustomerContact resource properties +type CustomerContact struct { + // REQUIRED; The email address used by Oracle to send notifications regarding databases and infrastructure. + Email *string +} + +// DNSPrivateView - DnsPrivateView resource definition +type DNSPrivateView struct { + // The resource-specific properties for this resource. + Properties *DNSPrivateViewProperties + + // READ-ONLY; DnsPrivateView OCID + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// DNSPrivateViewListResult - The response of a DnsPrivateView list operation. +type DNSPrivateViewListResult struct { + // REQUIRED; The DnsPrivateView items on this page + Value []*DNSPrivateView + + // The link to the next page of items + NextLink *string +} + +// DNSPrivateViewProperties - Views resource model +type DNSPrivateViewProperties struct { + // REQUIRED; The display name of the view resource + DisplayName *string + + // REQUIRED; A Boolean flag indicating whether or not parts of the resource are unable to be explicitly managed. + IsProtected *bool + + // REQUIRED; Views lifecycleState + LifecycleState *DNSPrivateViewsLifecycleState + + // REQUIRED; The OCID of the view + Ocid *string + + // REQUIRED; The canonical absolute URL of the resource. + Self *string + + // REQUIRED; views timeCreated + TimeCreated *time.Time + + // REQUIRED; views timeCreated + TimeUpdated *time.Time + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *ResourceProvisioningState +} + +// DNSPrivateZone - DnsPrivateZone resource definition +type DNSPrivateZone struct { + // The resource-specific properties for this resource. + Properties *DNSPrivateZoneProperties + + // READ-ONLY; DnsPrivateZone name + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// DNSPrivateZoneListResult - The response of a DnsPrivateZone list operation. +type DNSPrivateZoneListResult struct { + // REQUIRED; The DnsPrivateZone items on this page + Value []*DNSPrivateZone + + // The link to the next page of items + NextLink *string +} + +// DNSPrivateZoneProperties - Zones resource model +type DNSPrivateZoneProperties struct { + // REQUIRED; A Boolean flag indicating whether or not parts of the resource are unable to be explicitly managed. + IsProtected *bool + + // REQUIRED; Zones lifecycleState + LifecycleState *DNSPrivateZonesLifecycleState + + // REQUIRED; The OCID of the Zone + Ocid *string + + // REQUIRED; The canonical absolute URL of the resource. + Self *string + + // REQUIRED; The current serial of the zone. As seen in the zone's SOA record. + Serial *int32 + + // REQUIRED; Zones timeCreated + TimeCreated *time.Time + + // REQUIRED; Version is the never-repeating, totally-orderable, version of the zone, from which the serial field of the zone's + // SOA record is derived. + Version *string + + // REQUIRED; The type of the zone. Must be either PRIMARY or SECONDARY. SECONDARY is only supported for GLOBAL zones. + ZoneType *ZoneType + + // The OCID of the private view containing the zone. This value will be null for zones in the global DNS, which are publicly + // resolvable and not part of a private view. + ViewID *string + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *ResourceProvisioningState +} + +// DataCollectionOptions resource properties +type DataCollectionOptions struct { + // Indicates whether diagnostic collection is enabled for the VM cluster/Cloud VM cluster/VMBM DBCS. + IsDiagnosticsEventsEnabled *bool + + // Indicates whether health monitoring is enabled for the VM cluster / Cloud VM cluster / VMBM DBCS. + IsHealthMonitoringEnabled *bool + + // Indicates whether incident logs and trace collection are enabled for the VM cluster / Cloud VM cluster / VMBM DBCS. + IsIncidentLogsEnabled *bool +} + +// DayOfWeek resource properties +type DayOfWeek struct { + // REQUIRED; Name of the day of the week. + Name *DayOfWeekName +} + +// DayOfWeekUpdate - DayOfWeek resource properties +type DayOfWeekUpdate struct { + // REQUIRED; Name of the day of the week. + Name *DayOfWeekName +} + +// DbActionResponse - ExascaleDbNode action response +type DbActionResponse struct { + // ExascaleDbNode provisioning state + ProvisioningState *AzureResourceProvisioningState +} + +// DbIormConfig for cloud vm cluster +type DbIormConfig struct { + // The database name. For the default DbPlan, the dbName is default. + DbName *string + + // The flash cache limit for this database. This value is internally configured based on the share value assigned to the database. + FlashCacheLimit *string + + // The relative priority of this database. + Share *int32 +} + +// DbNode - The DbNode resource belonging to vmCluster +type DbNode struct { + // The resource-specific properties for this resource. + Properties *DbNodeProperties + + // READ-ONLY; DbNode OCID. + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// DbNodeAction - DbNode action object +type DbNodeAction struct { + // REQUIRED; Db action + Action *DbNodeActionEnum +} + +// DbNodeDetails - Details of the ExaCS Db node. Applies to Exadata Database Service on Exascale Infrastructure only. +type DbNodeDetails struct { + // REQUIRED; Exascale DbNode Azure Resource ID + DbNodeID *string +} + +// DbNodeListResult - The response of a DbNode list operation. +type DbNodeListResult struct { + // REQUIRED; The DbNode items on this page + Value []*DbNode + + // The link to the next page of items + NextLink *string +} + +// DbNodeProperties - The properties of DbNodeResource +type DbNodeProperties struct { + // REQUIRED; The OCID of the DB system. + DbSystemID *string + + // REQUIRED; The current state of the database node. + LifecycleState *DbNodeProvisioningState + + // REQUIRED; DbNode OCID + Ocid *string + + // REQUIRED; The date and time that the database node was created. + TimeCreated *time.Time + + // REQUIRED; The OCID of the VNIC. + VnicID *string + + // Additional information about the planned maintenance. + AdditionalDetails *string + + // The OCID of the backup IP address associated with the database node. + BackupIPID *string + + // The OCID of the second backup VNIC. + BackupVnic2ID *string + + // The OCID of the backup VNIC. + BackupVnicID *string + + // The number of CPU cores enabled on the Db node. + CPUCoreCount *int32 + + // The allocated local node storage in GBs on the Db node. + DbNodeStorageSizeInGbs *int32 + + // The OCID of the Exacc Db server associated with the database node. + DbServerID *string + + // The name of the Fault Domain the instance is contained in. + FaultDomain *string + + // The OCID of the host IP address associated with the database node. + HostIPID *string + + // The host name for the database node. + Hostname *string + + // Lifecycle details of Db Node. + LifecycleDetails *string + + // The type of database node maintenance. + MaintenanceType *DbNodeMaintenanceType + + // The allocated memory in GBs on the Db node. + MemorySizeInGbs *int32 + + // The size (in GB) of the block storage volume allocation for the DB system. This attribute applies only for virtual machine + // DB systems. + SoftwareStorageSizeInGb *int32 + + // End date and time of maintenance window. + TimeMaintenanceWindowEnd *time.Time + + // Start date and time of maintenance window. + TimeMaintenanceWindowStart *time.Time + + // The OCID of the second VNIC. + Vnic2ID *string + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *ResourceProvisioningState +} + +// DbServer resource model +type DbServer struct { + // The resource-specific properties for this resource. + Properties *DbServerProperties + + // READ-ONLY; DbServer OCID. + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// DbServerListResult - The response of a DbServer list operation. +type DbServerListResult struct { + // REQUIRED; The DbServer items on this page + Value []*DbServer + + // The link to the next page of items + NextLink *string +} + +// DbServerPatchingDetails - DbServer Patching Properties +type DbServerPatchingDetails struct { + // READ-ONLY; Estimated Patch Duration + EstimatedPatchDuration *int32 + + // READ-ONLY; Patching Status + PatchingStatus *DbServerPatchingStatus + + // READ-ONLY; Time Patching Ended + TimePatchingEnded *time.Time + + // READ-ONLY; Time Patching Started + TimePatchingStarted *time.Time +} + +// DbServerProperties - DbServer resource properties +type DbServerProperties struct { + // READ-ONLY; The list of OCIDs of the Autonomous VM Clusters associated with the Db server. + AutonomousVMClusterIDs []*string + + // READ-ONLY; The list of OCIDs of the Autonomous Virtual Machines associated with the Db server. + AutonomousVirtualMachineIDs []*string + + // READ-ONLY; The number of CPU cores enabled on the Db server. + CPUCoreCount *int32 + + // READ-ONLY; The OCID of the compartment. + CompartmentID *string + + // READ-ONLY; The compute model of the Exadata Infrastructure + ComputeModel *ComputeModel + + // READ-ONLY; The OCID of the Db nodes associated with the Db server. + DbNodeIDs []*string + + // READ-ONLY; The allocated local node storage in GBs on the Db server. + DbNodeStorageSizeInGbs *int32 + + // READ-ONLY; dbServerPatching details of the Db server. + DbServerPatchingDetails *DbServerPatchingDetails + + // READ-ONLY; The name for the Db Server. + DisplayName *string + + // READ-ONLY; The OCID of the Exadata infrastructure. + ExadataInfrastructureID *string + + // READ-ONLY; Lifecycle details of dbServer. + LifecycleDetails *string + + // READ-ONLY; DbServer provisioning state. + LifecycleState *DbServerProvisioningState + + // READ-ONLY; The total number of CPU cores available. + MaxCPUCount *int32 + + // READ-ONLY; The total max dbNode storage in GBs. + MaxDbNodeStorageInGbs *int32 + + // READ-ONLY; The total memory available in GBs. + MaxMemoryInGbs *int32 + + // READ-ONLY; The total memory size in GBs. + MemorySizeInGbs *int32 + + // READ-ONLY; Db server name. + Ocid *string + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *ResourceProvisioningState + + // READ-ONLY; The shape of the Db server. The shape determines the amount of CPU, storage, and memory resources available. + Shape *string + + // READ-ONLY; The date and time that the Db Server was created. + TimeCreated *time.Time + + // READ-ONLY; The OCID of the VM Clusters associated with the Db server. + VMClusterIDs []*string +} + +// DbSystemShape resource definition +type DbSystemShape struct { + // The resource-specific properties for this resource. + Properties *DbSystemShapeProperties + + // READ-ONLY; DbSystemShape name + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// DbSystemShapeListResult - The response of a DbSystemShape list operation. +type DbSystemShapeListResult struct { + // REQUIRED; The DbSystemShape items on this page + Value []*DbSystemShape + + // The link to the next page of items + NextLink *string +} + +// DbSystemShapeProperties - DbSystemShape resource model +type DbSystemShapeProperties struct { + // REQUIRED; The maximum number of CPU cores that can be enabled on the DB system for this shape. + AvailableCoreCount *int32 + + // REQUIRED; The shape used for the DB system. + ShapeName *string + + // Indicates if the shape supports database and storage server types + AreServerTypesSupported *bool + + // The maximum number of CPU cores per database node that can be enabled for this shape. Only applicable to the flex Exadata + // shape and ExaCC Elastic shapes. + AvailableCoreCountPerNode *int32 + + // The maximum DATA storage that can be enabled for this shape. + AvailableDataStorageInTbs *int32 + + // The maximum data storage available per storage server for this shape. Only applicable to ExaCC Elastic shapes. + AvailableDataStoragePerServerInTbs *float64 + + // The maximum Db Node storage available per database node for this shape. Only applicable to ExaCC Elastic shapes. + AvailableDbNodePerNodeInGbs *int32 + + // The maximum Db Node storage that can be enabled for this shape. + AvailableDbNodeStorageInGbs *int32 + + // The maximum memory that can be enabled for this shape. + AvailableMemoryInGbs *int32 + + // The maximum memory available per database node for this shape. Only applicable to ExaCC Elastic shapes. + AvailableMemoryPerNodeInGbs *int32 + + // The compute model of the Exadata Infrastructure + ComputeModel *ComputeModel + + // The discrete number by which the CPU core count for this shape can be increased or decreased. + CoreCountIncrement *int32 + + // The display name of the shape used for the DB system + DisplayName *string + + // The maximum number of Exadata storage servers available for the Exadata infrastructure. + MaxStorageCount *int32 + + // The maximum number of database nodes available for this shape. + MaximumNodeCount *int32 + + // The minimum number of CPU cores that can be enabled per node for this shape. + MinCoreCountPerNode *int32 + + // The minimum data storage that need be allocated for this shape. + MinDataStorageInTbs *int32 + + // The minimum Db Node storage that need be allocated per node for this shape. + MinDbNodeStoragePerNodeInGbs *int32 + + // The minimum memory that need be allocated per node for this shape. + MinMemoryPerNodeInGbs *int32 + + // The minimum number of Exadata storage servers available for the Exadata infrastructure. + MinStorageCount *int32 + + // The minimum number of CPU cores that can be enabled on the DB system for this shape. + MinimumCoreCount *int32 + + // The minimum number of database nodes available for this shape. + MinimumNodeCount *int32 + + // The runtime minimum number of CPU cores that can be enabled on the DB system for this shape. + RuntimeMinimumCoreCount *int32 + + // The family of the shape used for the DB system. + ShapeFamily *string +} + +// DefinedFileSystemConfiguration - Predefined configurations for the file system +type DefinedFileSystemConfiguration struct { + // Checks if the data can be backed up + IsBackupPartition *bool + + // Checks if the mount path is resizable + IsResizable *bool + + // Minimum size of mount path in Gb + MinSizeGb *int32 + + // Mount path for the file system + MountPoint *string +} + +// DisasterRecoveryConfigurationDetails - Configurations of a Disaster Recovery Details +type DisasterRecoveryConfigurationDetails struct { + // Indicates the disaster recovery (DR) type of the Autonomous Database Serverless instance. Autonomous Data Guard (ADG) DR + // type provides business critical DR with a faster recovery time objective (RTO) during failover or switchover. Backup-based + // DR type provides lower cost DR with a slower RTO during failover or switchover. + DisasterRecoveryType *DisasterRecoveryType + + // If true, 7 days worth of backups are replicated across regions for Cross-Region ADB or Backup-Based DR between Primary + // and Standby. If false, the backups taken on the Primary are not replicated to the Standby database. + IsReplicateAutomaticBackups *bool + + // Indicates if user wants to convert to a snapshot standby. For example, true would set a standby database to snapshot standby + // database. False would set a snapshot standby database back to regular standby database. + IsSnapshotStandby *bool + + // Time and date stored as an RFC 3339 formatted timestamp string. For example, 2022-01-01T12:00:00.000Z would set a limit + // for the snapshot standby to be converted back to a cross-region standby database. + TimeSnapshotStandbyEnabledTill *time.Time +} + +// EstimatedPatchingTime - The estimated total time required in minutes for all patching operations (database server, storage +// server, and network switch patching). +type EstimatedPatchingTime struct { + // READ-ONLY; The estimated time required in minutes for database server patching. + EstimatedDbServerPatchingTime *int32 + + // READ-ONLY; The estimated time required in minutes for network switch patching. + EstimatedNetworkSwitchesPatchingTime *int32 + + // READ-ONLY; The estimated time required in minutes for storage server patching. + EstimatedStorageServerPatchingTime *int32 + + // READ-ONLY; The estimated total time required in minutes for all patching operations. + TotalEstimatedPatchingTime *int32 +} + +// ExadataIormConfig for cloud vm cluster +type ExadataIormConfig struct { + // An array of IORM settings for all the database in the Exadata DB system. + DbPlans []*DbIormConfig + + // Additional information about the current lifecycleState. + LifecycleDetails *string + + // The current state of IORM configuration for the Exadata DB system. + LifecycleState *IormLifecycleState + + // The current value for the IORM objective. The default is AUTO. + Objective *Objective +} + +// ExadbVMCluster - ExadbVmCluster resource definition +type ExadbVMCluster struct { + // REQUIRED; The geo-location where the resource lives + Location *string + + // The resource-specific properties for this resource. + Properties *ExadbVMClusterProperties + + // Resource tags. + Tags map[string]*string + + // The availability zones. + Zones []*string + + // READ-ONLY; The name of the ExadbVmCluster + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// ExadbVMClusterListResult - The response of a ExadbVmCluster list operation. +type ExadbVMClusterListResult struct { + // REQUIRED; The ExadbVmCluster items on this page + Value []*ExadbVMCluster + + // The link to the next page of items + NextLink *string +} + +// ExadbVMClusterProperties - ExadbVmCluster resource model +type ExadbVMClusterProperties struct { + // REQUIRED; Display Name + DisplayName *string + + // REQUIRED; The number of ECPUs to enable for an Exadata VM cluster on Exascale Infrastructure. + EnabledEcpuCount *int32 + + // REQUIRED; The Azure Resource ID of the Exadata Database Storage Vault. + ExascaleDbStorageVaultID *string + + // REQUIRED; The hostname for the Exadata VM cluster on Exascale Infrastructure. + Hostname *string + + // REQUIRED; The number of nodes in the Exadata VM cluster on Exascale Infrastructure. + NodeCount *int32 + + // REQUIRED; The public key portion of one or more key pairs used for SSH access to the Exadata VM cluster on Exascale Infrastructure. + SSHPublicKeys []*string + + // REQUIRED; The shape of the Exadata VM cluster on Exascale Infrastructure resource + Shape *string + + // REQUIRED; Client subnet + SubnetID *string + + // REQUIRED; The number of Total ECPUs for an Exadata VM cluster on Exascale Infrastructure. + TotalEcpuCount *int32 + + // REQUIRED; Filesystem storage details. + VMFileSystemStorage *ExadbVMClusterStorageDetails + + // REQUIRED; VNET for network connectivity + VnetID *string + + // Client OCI backup subnet CIDR, default is 192.168.252.0/22 + BackupSubnetCidr *string + + // The cluster name for Exadata VM cluster on Exascale Infrastructure. The cluster name must begin with an alphabetic character, + // and may contain hyphens (-). Underscores (_) are not permitted. The cluster name can be no longer than 11 characters and + // is not case sensitive. + ClusterName *string + + // Indicates user preferences for the various diagnostic collection options for the VM cluster/Cloud VM cluster/VMBM DBCS. + DataCollectionOptions *DataCollectionOptions + + // A domain name used for the Exadata VM cluster on Exascale Infrastructure + Domain *string + + // Grid Setup will be done using this Grid Image OCID. Can be obtained using giMinorVersions API + GridImageOcid *string + + // The Oracle license model that applies to the Exadata VM cluster on Exascale Infrastructure. The default is LICENSE_INCLUDED. + LicenseModel *LicenseModel + + // CIDR blocks for additional NSG ingress rules. The VNET CIDRs used to provision the VM Cluster will be added by default. + NsgCidrs []*NsgCidr + + // The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is associated with. + PrivateZoneOcid *string + + // The TCP Single Client Access Name (SCAN) port. The default port is 1521. + ScanListenerPortTCP *int32 + + // The TCPS Single Client Access Name (SCAN) port. The default port is 2484. + ScanListenerPortTCPSSL *int32 + + // Operating system version of the image. + SystemVersion *string + + // The time zone of the Exadata VM cluster on Exascale Infrastructure. For details, see [Exadata Infrastructure Time Zones](/Content/Database/References/timezones.htm). + TimeZone *string + + // READ-ONLY; Cluster backup subnet ocid + BackupSubnetOcid *string + + // READ-ONLY; Oracle Grid Infrastructure (GI) software version + GiVersion *string + + // READ-ONLY; The type of Grid Image + GridImageType *GridImageType + + // READ-ONLY; iormConfigCache details for Exadata VM cluster on Exascale Infrastructure. + IormConfigCache *ExadataIormConfig + + // READ-ONLY; Additional information about the current lifecycle state. + LifecycleDetails *string + + // READ-ONLY; CloudVmCluster lifecycle state + LifecycleState *ExadbVMClusterLifecycleState + + // READ-ONLY; The port number configured for the listener on the Exadata VM cluster on Exascale Infrastructure. + ListenerPort *int32 + + // READ-ONLY; The memory that you want to be allocated in GBs. Memory is calculated based on 11 GB per VM core reserved. + MemorySizeInGbs *int32 + + // READ-ONLY; HTTPS link to OCI Network Security Group exposed to Azure Customer via the Azure Interface. + NsgURL *string + + // READ-ONLY; HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + OciURL *string + + // READ-ONLY; ExadbVmCluster ocid + Ocid *string + + // READ-ONLY; Exadata VM cluster on Exascale Infrastructure provisioning state + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; The FQDN of the DNS record for the SCAN IP addresses that are associated with the Exadata VM cluster on Exascale + // Infrastructure. + ScanDNSName *string + + // READ-ONLY; The OCID of the DNS record for the SCAN IP addresses that are associated with the Exadata VM cluster on Exascale + // Infrastructure. + ScanDNSRecordID *string + + // READ-ONLY; The Single Client Access Name (SCAN) IP addresses associated with the Exadata VM cluster on Exascale Infrastructure. + // SCAN IP addresses are typically used for load balancing and are not assigned to any interface. Oracle Clusterware directs + // the requests to the appropriate nodes in the cluster. **Note:** For a single-node DB system, this list is empty. + ScanIPIDs []*string + + // READ-ONLY; Snapshot filesystem storage details. + SnapshotFileSystemStorage *ExadbVMClusterStorageDetails + + // READ-ONLY; Cluster subnet ocid + SubnetOcid *string + + // READ-ONLY; Total file system storage details. + TotalFileSystemStorage *ExadbVMClusterStorageDetails + + // READ-ONLY; The virtual IP (VIP) addresses associated with the Exadata VM cluster on Exascale Infrastructure. The Cluster + // Ready Services (CRS) creates and maintains one VIP address for each node in the Exadata Cloud Service instance to enable + // failover. If one node fails, the VIP is reassigned to another active node in the cluster. **Note:** For a single-node DB + // system, this list is empty. + VipIDs []*string + + // READ-ONLY; The OCID of the zone the Exadata VM cluster on Exascale Infrastructure is associated with. + ZoneOcid *string +} + +// ExadbVMClusterStorageDetails - Storage Details on the Exadata VM cluster. +type ExadbVMClusterStorageDetails struct { + // REQUIRED; Total Capacity + TotalSizeInGbs *int32 +} + +// ExadbVMClusterUpdate - The type used for update operations of the ExadbVmCluster. +type ExadbVMClusterUpdate struct { + // The resource-specific properties for this resource. + Properties *ExadbVMClusterUpdateProperties + + // Resource tags. + Tags map[string]*string + + // The availability zones. + Zones []*string +} + +// ExadbVMClusterUpdateProperties - The updatable properties of the ExadbVmCluster. +type ExadbVMClusterUpdateProperties struct { + // The number of nodes in the Exadata VM cluster on Exascale Infrastructure. + NodeCount *int32 +} + +// ExascaleDbNode - The DbNode resource belonging to ExadbVmCluster +type ExascaleDbNode struct { + // The resource-specific properties for this resource. + Properties *ExascaleDbNodeProperties + + // READ-ONLY; The name of the ExascaleDbNode + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// ExascaleDbNodeListResult - The response of a ExascaleDbNode list operation. +type ExascaleDbNodeListResult struct { + // REQUIRED; The ExascaleDbNode items on this page + Value []*ExascaleDbNode + + // The link to the next page of items + NextLink *string +} + +// ExascaleDbNodeProperties - The properties of DbNodeResource +type ExascaleDbNodeProperties struct { + // REQUIRED; DbNode OCID + Ocid *string + + // Additional information about the planned maintenance. + AdditionalDetails *string + + // The number of CPU cores enabled on the Db node. + CPUCoreCount *int32 + + // The allocated local node storage in GBs on the Db node. + DbNodeStorageSizeInGbs *int32 + + // The name of the Fault Domain the instance is contained in. + FaultDomain *string + + // The host name for the database node. + Hostname *string + + // The current state of the database node. + LifecycleState *DbNodeProvisioningState + + // The type of database node maintenance. + MaintenanceType *string + + // The allocated memory in GBs on the Db node. + MemorySizeInGbs *int32 + + // The size (in GB) of the block storage volume allocation for the DB system. This attribute applies only for virtual machine + // DB systems. + SoftwareStorageSizeInGb *int32 + + // End date and time of maintenance window. + TimeMaintenanceWindowEnd *time.Time + + // Start date and time of maintenance window. + TimeMaintenanceWindowStart *time.Time + + // The total number of CPU cores reserved on the Db node. + TotalCPUCoreCount *int32 +} + +// ExascaleDbStorageDetails - Exadata Database Storage Details +type ExascaleDbStorageDetails struct { + // Available Capacity + AvailableSizeInGbs *int32 + + // Total Capacity + TotalSizeInGbs *int32 +} + +// ExascaleDbStorageInputDetails - Create exadata Database Storage Details model +type ExascaleDbStorageInputDetails struct { + // REQUIRED; Total Capacity + TotalSizeInGbs *int32 +} + +// ExascaleDbStorageVault resource definition +type ExascaleDbStorageVault struct { + // REQUIRED; The geo-location where the resource lives + Location *string + + // The resource-specific properties for this resource. + Properties *ExascaleDbStorageVaultProperties + + // Resource tags. + Tags map[string]*string + + // The availability zones. + Zones []*string + + // READ-ONLY; The name of the ExascaleDbStorageVault + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// ExascaleDbStorageVaultListResult - The response of a ExascaleDbStorageVault list operation. +type ExascaleDbStorageVaultListResult struct { + // REQUIRED; The ExascaleDbStorageVault items on this page + Value []*ExascaleDbStorageVault + + // The link to the next page of items + NextLink *string +} + +// ExascaleDbStorageVaultProperties - ExascaleDbStorageVault resource model +type ExascaleDbStorageVaultProperties struct { + // REQUIRED; The user-friendly name for the Exadata Database Storage Vault. The name does not need to be unique. + DisplayName *string + + // REQUIRED; Create exadata Database Storage Details + HighCapacityDatabaseStorageInput *ExascaleDbStorageInputDetails + + // The size of additional Flash Cache in percentage of High Capacity database storage. + AdditionalFlashCacheInPercent *int32 + + // Exadata Database Storage Vault description. + Description *string + + // The time zone that you want to use for the Exadata Database Storage Vault + TimeZone *string + + // READ-ONLY; Response exadata Database Storage Details + HighCapacityDatabaseStorage *ExascaleDbStorageDetails + + // READ-ONLY; Additional information about the current lifecycle state. + LifecycleDetails *string + + // READ-ONLY; Exadata Database Storage Vault lifecycle state + LifecycleState *ExascaleDbStorageVaultLifecycleState + + // READ-ONLY; HTTPS link to OCI resources exposed to Azure Customer via Azure Interface. + OciURL *string + + // READ-ONLY; The OCID of the Exadata Database Storage Vault. + Ocid *string + + // READ-ONLY; Exadata Database Storage Vault provisioning state + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; The number of Exadata VM clusters used the Exadata Database Storage Vault. + VMClusterCount *int32 +} + +// ExascaleDbStorageVaultTagsUpdate - The type used for updating tags in ExascaleDbStorageVault resources. +type ExascaleDbStorageVaultTagsUpdate struct { + // Resource tags. + Tags map[string]*string +} + +// FileSystemConfigurationDetails - File configuration options +type FileSystemConfigurationDetails struct { + // Size of the VM + FileSystemSizeGb *int32 + + // Mount path + MountPoint *string +} + +// FlexComponent Resource Definition +type FlexComponent struct { + // The resource-specific properties for this resource. + Properties *FlexComponentProperties + + // READ-ONLY; The name of the FlexComponent + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// FlexComponentListResult - The response of a FlexComponent list operation. +type FlexComponentListResult struct { + // REQUIRED; The FlexComponent items on this page + Value []*FlexComponent + + // The link to the next page of items + NextLink *string +} + +// FlexComponentProperties - FlexComponent resource model +type FlexComponentProperties struct { + // READ-ONLY; The maximum number of CPU cores that can be enabled on the DB Server for this Flex Component. + AvailableCoreCount *int32 + + // READ-ONLY; The maximum storage that can be enabled on the Storage Server for this Flex Component. + AvailableDbStorageInGbs *int32 + + // READ-ONLY; The maximum local storage that can be enabled on the DB Server for this Flex Component. + AvailableLocalStorageInGbs *int32 + + // READ-ONLY; The maximum memory size that can be enabled on the DB Server for this Flex Component. + AvailableMemoryInGbs *int32 + + // READ-ONLY; The compute model of the DB Server for this Flex Component. + ComputeModel *string + + // READ-ONLY; The description summary for this Flex Component. + DescriptionSummary *string + + // READ-ONLY; The hardware type of the DB (Compute) or Storage (Cell) Server for this Flex Component. + HardwareType *HardwareType + + // READ-ONLY; The minimum number of CPU cores that can be enabled on the DB Server for this Flex Component. + MinimumCoreCount *int32 + + // READ-ONLY; The runtime minimum number of CPU cores that can be enabled for this Flex Component. + RuntimeMinimumCoreCount *int32 + + // READ-ONLY; The name of the DB system shape for this Flex Component. + Shape *string +} + +// GenerateAutonomousDatabaseWalletDetails - Autonomous Database Generate Wallet resource model. +type GenerateAutonomousDatabaseWalletDetails struct { + // REQUIRED; The password to encrypt the keys inside the wallet + Password *string + + // The type of wallet to generate. + GenerateType *GenerateType + + // True when requesting regional connection strings in PDB connect info, applicable to cross-region DG only. + IsRegional *bool +} + +// GiMinorVersion - The Oracle Grid Infrastructure (GI) minor version resource definition. +type GiMinorVersion struct { + // The resource-specific properties for this resource. + Properties *GiMinorVersionProperties + + // READ-ONLY; The name of the GiMinorVersion + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// GiMinorVersionListResult - The response of a GiMinorVersion list operation. +type GiMinorVersionListResult struct { + // REQUIRED; The GiMinorVersion items on this page + Value []*GiMinorVersion + + // The link to the next page of items + NextLink *string +} + +// GiMinorVersionProperties - The Oracle Grid Infrastructure (GI) minor version properties +type GiMinorVersionProperties struct { + // REQUIRED; A valid Oracle Grid Infrastructure (GI) software version. + Version *string + + // Grid Infrastructure Image Id + GridImageOcid *string +} + +// GiVersion resource definition +type GiVersion struct { + // The resource-specific properties for this resource. + Properties *GiVersionProperties + + // READ-ONLY; GiVersion name + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// GiVersionListResult - The response of a GiVersion list operation. +type GiVersionListResult struct { + // REQUIRED; The GiVersion items on this page + Value []*GiVersion + + // The link to the next page of items + NextLink *string +} + +// GiVersionProperties - GiVersion resource model +type GiVersionProperties struct { + // REQUIRED; A valid Oracle Grid Infrastructure (GI) software version. + Version *string +} + +// LongTermBackUpScheduleDetails - Details for the long-term backup schedule. +type LongTermBackUpScheduleDetails struct { + // Indicates if the long-term backup schedule should be deleted. The default value is `FALSE`. + IsDisabled *bool + + // The frequency of the long-term backup schedule + RepeatCadence *RepeatCadenceType + + // Retention period, in days, for backups. + RetentionPeriodInDays *int32 + + // The timestamp for the long-term backup schedule. For a MONTHLY cadence, months having fewer days than the provided date + // will have the backup taken on the last day of that month. + TimeOfBackup *time.Time +} + +// MaintenanceWindow resource properties +type MaintenanceWindow struct { + // Determines the amount of time the system will wait before the start of each database server patching operation. Custom + // action timeout is in minutes and valid value is between 15 to 120 (inclusive). + CustomActionTimeoutInMins *int32 + + // Days during the week when maintenance should be performed. + DaysOfWeek []*DayOfWeek + + // The window of hours during the day when maintenance should be performed. The window is a 4 hour slot. Valid values are + // - 0 - represents time slot 0:00 - 3:59 UTC - 4 - represents time slot 4:00 - 7:59 UTC - 8 - represents time slot 8:00 - + // 11:59 UTC - 12 - represents time slot 12:00 - 15:59 UTC - 16 - represents time slot 16:00 - 19:59 UTC - 20 - represents + // time slot 20:00 - 23:59 UTC + HoursOfDay []*int32 + + // If true, enables the configuration of a custom action timeout (waiting period) between database server patching operations. + IsCustomActionTimeoutEnabled *bool + + // is Monthly Patching Enabled + IsMonthlyPatchingEnabled *bool + + // Lead time window allows user to set a lead time to prepare for a down time. The lead time is in weeks and valid value is + // between 1 to 4. + LeadTimeInWeeks *int32 + + // Months during the year when maintenance should be performed. + Months []*Month + + // Cloud Exadata infrastructure node patching method. + PatchingMode *PatchingMode + + // The maintenance window scheduling preference. + Preference *Preference + + // Weeks during the month when maintenance should be performed. Weeks start on the 1st, 8th, 15th, and 22nd days of the month, + // and have a duration of 7 days. Weeks start and end based on calendar dates, not days of the week. For example, to allow + // maintenance during the 2nd week of the month (from the 8th day to the 14th day of the month), use the value 2. Maintenance + // cannot be scheduled for the fifth week of months that contain more than 28 days. Note that this parameter works in conjunction + // with the daysOfWeek and hoursOfDay parameters to allow you to specify specific days of the week and hours that maintenance + // will be performed. + WeeksOfMonth []*int32 +} + +// Month resource properties +type Month struct { + // REQUIRED; Name of the month of the year. + Name *MonthName +} + +// NsgCidr - A rule for allowing inbound (INGRESS) IP packets +type NsgCidr struct { + // REQUIRED; Conceptually, this is the range of IP addresses that a packet coming into the instance can come from. + Source *string + + // Destination port range to specify particular destination ports for TCP rules. + DestinationPortRange *PortRange +} + +// Operation - REST API Operation +// +// Details of a REST API operation, returned from the Resource Provider Operations API +type Operation struct { + // Localized display information for this particular operation. + Display *OperationDisplay + + // READ-ONLY; Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. + ActionType *ActionType + + // READ-ONLY; Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for Azure + // Resource Manager/control-plane operations. + IsDataAction *bool + + // READ-ONLY; The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", + // "Microsoft.Compute/virtualMachines/capture/action" + Name *string + + // READ-ONLY; The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default + // value is "user,system" + Origin *Origin +} + +// OperationDisplay - Localized display information for and operation. +type OperationDisplay struct { + // READ-ONLY; The short, localized friendly description of the operation; suitable for tool tips and detailed views. + Description *string + + // READ-ONLY; The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual + // Machine", "Restart Virtual Machine". + Operation *string + + // READ-ONLY; The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft + // Compute". + Provider *string + + // READ-ONLY; The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job + // Schedule Collections". + Resource *string +} + +// OperationListResult - A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to +// get the next set of results. +type OperationListResult struct { + // REQUIRED; The Operation items on this page + Value []*Operation + + // The link to the next page of items + NextLink *string +} + +// OracleSubscription resource definition +type OracleSubscription struct { + // Details of the resource plan. + Plan *Plan + + // The resource-specific properties for this resource. + Properties *OracleSubscriptionProperties + + // READ-ONLY; OracleSubscription name + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// OracleSubscriptionListResult - The response of a OracleSubscription list operation. +type OracleSubscriptionListResult struct { + // REQUIRED; The OracleSubscription items on this page + Value []*OracleSubscription + + // The link to the next page of items + NextLink *string +} + +// OracleSubscriptionProperties - Oracle Subscription resource model +type OracleSubscriptionProperties struct { + // Intent for the update operation + Intent *Intent + + // Product code for the term unit + ProductCode *string + + // Term Unit. P1Y, P3Y, etc, see Durations https://en.wikipedia.org/wiki/ISO_8601 + TermUnit *string + + // READ-ONLY; State of the add Azure subscription operation on Oracle subscription + AddSubscriptionOperationState *AddSubscriptionOperationState + + // READ-ONLY; Azure subscriptions to be added + AzureSubscriptionIDs []*string + + // READ-ONLY; Cloud Account Id + CloudAccountID *string + + // READ-ONLY; Cloud Account provisioning state. + CloudAccountState *CloudAccountProvisioningState + + // READ-ONLY; Status details of the last operation on Oracle subscription + LastOperationStatusDetail *string + + // READ-ONLY; OracleSubscriptionProvisioningState provisioning state + ProvisioningState *OracleSubscriptionProvisioningState + + // READ-ONLY; SAAS subscription ID generated by Marketplace + SaasSubscriptionID *string +} + +// OracleSubscriptionUpdate - The type used for update operations of the OracleSubscription. +type OracleSubscriptionUpdate struct { + // Details of the resource plan. + Plan *PlanUpdate + + // The resource-specific properties for this resource. + Properties *OracleSubscriptionUpdateProperties +} + +// OracleSubscriptionUpdateProperties - The updatable properties of the OracleSubscription. +type OracleSubscriptionUpdateProperties struct { + // Intent for the update operation + Intent *Intent + + // Product code for the term unit + ProductCode *string +} + +// PeerDbDetails - PeerDb Details +type PeerDbDetails struct { + // The Azure resource ID of the Disaster Recovery peer database, which is located in a different region from the current peer + // database. + PeerDbID *string + + // The location of the Disaster Recovery peer database. + PeerDbLocation *string + + // Ocid of the Disaster Recovery peer database, which is located in a different region from the current peer database. + PeerDbOcid *string +} + +// Plan for the resource. +type Plan struct { + // REQUIRED; A user defined name of the 3rd Party Artifact that is being procured. + Name *string + + // REQUIRED; The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact + // at the time of Data Market onboarding. + Product *string + + // REQUIRED; The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic + Publisher *string + + // A publisher provided promotion code as provisioned in Data Market for the said product/artifact. + PromotionCode *string + + // The version of the desired product/artifact. + Version *string +} + +// PlanUpdate - ResourcePlanTypeUpdate model definition +type PlanUpdate struct { + // A user defined name of the 3rd Party Artifact that is being procured. + Name *string + + // The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at + // the time of Data Market onboarding. + Product *string + + // A publisher provided promotion code as provisioned in Data Market for the said product/artifact. + PromotionCode *string + + // The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic + Publisher *string + + // The version of the desired product/artifact. + Version *string +} + +// PortRange - Port Range to specify particular destination ports for TCP rules. +type PortRange struct { + // REQUIRED; The maximum port number, which must not be less than the minimum port number. To specify a single port number, + // set both the min and max to the same value. + Max *int32 + + // REQUIRED; The minimum port number, which must not be greater than the maximum port number. + Min *int32 +} + +// PrivateIPAddressProperties - PrivateIpAddress resource properties +type PrivateIPAddressProperties struct { + // REQUIRED; PrivateIpAddresses displayName + DisplayName *string + + // REQUIRED; PrivateIpAddresses hostnameLabel + HostnameLabel *string + + // REQUIRED; PrivateIpAddresses ipAddress + IPAddress *string + + // REQUIRED; PrivateIpAddresses Id + Ocid *string + + // REQUIRED; PrivateIpAddresses subnetId + SubnetID *string +} + +// PrivateIPAddressesFilter - Private Ip Addresses filter +type PrivateIPAddressesFilter struct { + // REQUIRED; Subnet OCID + SubnetID *string + + // REQUIRED; VCN OCID + VnicID *string +} + +// ProfileType - The connection string profile to allow clients to group, filter and select connection string values based +// on structured metadata. +type ProfileType struct { + // REQUIRED; A user-friendly name for the connection. + DisplayName *string + + // REQUIRED; Host format used in connection string. + HostFormat *HostFormatType + + // REQUIRED; Protocol used by the connection. + Protocol *ProtocolType + + // REQUIRED; Specifies whether the listener performs a direct hand-off of the session, or redirects the session. + SessionMode *SessionModeType + + // REQUIRED; Specifies whether the connection string is using the long (LONG), Easy Connect (EZCONNECT), or Easy Connect Plus + // (EZCONNECTPLUS) format. + SyntaxFormat *SyntaxFormatType + + // REQUIRED; Connection string value. + Value *string + + // Consumer group used by the connection. + ConsumerGroup *ConsumerGroup + + // True for a regional connection string, applicable to cross-region DG only. + IsRegional *bool + + // Specifies whether the TLS handshake is using one-way (SERVER) or mutual (MUTUAL) authentication. + TLSAuthentication *TLSAuthenticationType +} + +// RemoveVirtualMachineFromExadbVMClusterDetails - Details of removing Virtual Machines from the Exadata VM cluster on Exascale +// Infrastructure. Applies to Exadata Database Service on Exascale Infrastructure only. +type RemoveVirtualMachineFromExadbVMClusterDetails struct { + // REQUIRED; The list of ExaCS DB nodes for the Exadata VM cluster on Exascale Infrastructure to be removed. + DbNodes []*DbNodeDetails +} + +// RestoreAutonomousDatabaseDetails - Details to restore an Oracle Autonomous Database. +type RestoreAutonomousDatabaseDetails struct { + // REQUIRED; The time to restore the database to. + Timestamp *time.Time +} + +// SaasSubscriptionDetails - SaaS Subscription Details model +type SaasSubscriptionDetails struct { + // READ-ONLY; Purchased SaaS subscription ID + ID *string + + // READ-ONLY; AutoRenew flag + IsAutoRenew *bool + + // READ-ONLY; FreeTrial flag + IsFreeTrial *bool + + // READ-ONLY; Purchased offer ID + OfferID *string + + // READ-ONLY; Purchased offer's plan ID + PlanID *string + + // READ-ONLY; Publisher ID + PublisherID *string + + // READ-ONLY; Purchaser Email ID + PurchaserEmailID *string + + // READ-ONLY; Purchaser Tenant ID + PurchaserTenantID *string + + // READ-ONLY; Indicates the status of the Subscription. + SaasSubscriptionStatus *string + + // READ-ONLY; SaaS subscription name + SubscriptionName *string + + // READ-ONLY; Purchase Term Unit + TermUnit *string + + // READ-ONLY; Creation Date and Time + TimeCreated *time.Time +} + +// ScheduledOperationsType - The list of scheduled operations. +type ScheduledOperationsType struct { + // REQUIRED; Day of week + DayOfWeek *DayOfWeek + + // auto start time. value must be of ISO-8601 format HH:mm + ScheduledStartTime *string + + // auto stop time. value must be of ISO-8601 format HH:mm + ScheduledStopTime *string +} + +// ScheduledOperationsTypeUpdate - The list of scheduled operations. +type ScheduledOperationsTypeUpdate struct { + // REQUIRED; Day of week + DayOfWeek *DayOfWeekUpdate + + // auto start time. value must be of ISO-8601 format HH:mm + ScheduledStartTime *string + + // auto stop time. value must be of ISO-8601 format HH:mm + ScheduledStopTime *string +} + +// SystemData - Metadata pertaining to creation and last modification of the resource. +type SystemData struct { + // The timestamp of resource creation (UTC). + CreatedAt *time.Time + + // The identity that created the resource. + CreatedBy *string + + // The type of identity that created the resource. + CreatedByType *CreatedByType + + // The timestamp of resource last modification (UTC) + LastModifiedAt *time.Time + + // The identity that last modified the resource. + LastModifiedBy *string + + // The type of identity that last modified the resource. + LastModifiedByType *CreatedByType +} + +// SystemVersion resource Definition +type SystemVersion struct { + // The resource-specific properties for this resource. + Properties *SystemVersionProperties + + // READ-ONLY; SystemVersion name + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// SystemVersionListResult - The response of a SystemVersion list operation. +type SystemVersionListResult struct { + // REQUIRED; The SystemVersion items on this page + Value []*SystemVersion + + // The link to the next page of items + NextLink *string +} + +// SystemVersionProperties - System Version Resource model +type SystemVersionProperties struct { + // REQUIRED; A valid Oracle System Version + SystemVersion *string +} + +// VirtualNetworkAddress - Virtual IP resource belonging to a vm cluster resource. +type VirtualNetworkAddress struct { + // The resource-specific properties for this resource. + Properties *VirtualNetworkAddressProperties + + // READ-ONLY; Virtual IP address hostname. + Name *string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; Azure Resource Manager metadata containing createdBy and modifiedBy information. + SystemData *SystemData + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// VirtualNetworkAddressListResult - The response of a VirtualNetworkAddress list operation. +type VirtualNetworkAddressListResult struct { + // REQUIRED; The VirtualNetworkAddress items on this page + Value []*VirtualNetworkAddress + + // The link to the next page of items + NextLink *string +} + +// VirtualNetworkAddressProperties - virtualNetworkAddress resource properties +type VirtualNetworkAddressProperties struct { + // Virtual network Address address. + IPAddress *string + + // Virtual Machine OCID. + VMOcid *string + + // READ-ONLY; Virtual network address fully qualified domain name. + Domain *string + + // READ-ONLY; Additional information about the current lifecycle state of the application virtual IP (VIP) address. + LifecycleDetails *string + + // READ-ONLY; virtual network address lifecycle state. + LifecycleState *VirtualNetworkAddressLifecycleState + + // READ-ONLY; Application VIP OCID. + Ocid *string + + // READ-ONLY; Azure resource provisioning state. + ProvisioningState *AzureResourceProvisioningState + + // READ-ONLY; The date and time when the create operation for the application virtual IP (VIP) address completed. + TimeAssigned *time.Time +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/models_serde.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/models_serde.go new file mode 100644 index 00000000..4deee0ce --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/models_serde.go @@ -0,0 +1,7272 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "encoding/json" + "fmt" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "reflect" +) + +// MarshalJSON implements the json.Marshaller interface for type ActivationLinks. +func (a ActivationLinks) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "existingCloudAccountActivationLink", a.ExistingCloudAccountActivationLink) + populate(objectMap, "newCloudAccountActivationLink", a.NewCloudAccountActivationLink) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ActivationLinks. +func (a *ActivationLinks) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "existingCloudAccountActivationLink": + err = unpopulate(val, "ExistingCloudAccountActivationLink", &a.ExistingCloudAccountActivationLink) + delete(rawMsg, key) + case "newCloudAccountActivationLink": + err = unpopulate(val, "NewCloudAccountActivationLink", &a.NewCloudAccountActivationLink) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AddRemoveDbNode. +func (a AddRemoveDbNode) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "dbServers", a.DbServers) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AddRemoveDbNode. +func (a *AddRemoveDbNode) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "dbServers": + err = unpopulate(val, "DbServers", &a.DbServers) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AllConnectionStringType. +func (a AllConnectionStringType) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "high", a.High) + populate(objectMap, "low", a.Low) + populate(objectMap, "medium", a.Medium) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AllConnectionStringType. +func (a *AllConnectionStringType) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "high": + err = unpopulate(val, "High", &a.High) + delete(rawMsg, key) + case "low": + err = unpopulate(val, "Low", &a.Low) + delete(rawMsg, key) + case "medium": + err = unpopulate(val, "Medium", &a.Medium) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ApexDetailsType. +func (a ApexDetailsType) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "apexVersion", a.ApexVersion) + populate(objectMap, "ordsVersion", a.OrdsVersion) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ApexDetailsType. +func (a *ApexDetailsType) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "apexVersion": + err = unpopulate(val, "ApexVersion", &a.ApexVersion) + delete(rawMsg, key) + case "ordsVersion": + err = unpopulate(val, "OrdsVersion", &a.OrdsVersion) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabase. +func (a AutonomousDatabase) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", a.ID) + populate(objectMap, "location", a.Location) + populate(objectMap, "name", a.Name) + populate(objectMap, "properties", a.Properties) + populate(objectMap, "systemData", a.SystemData) + populate(objectMap, "tags", a.Tags) + populate(objectMap, "type", a.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabase. +func (a *AutonomousDatabase) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &a.ID) + delete(rawMsg, key) + case "location": + err = unpopulate(val, "Location", &a.Location) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &a.Name) + delete(rawMsg, key) + case "properties": + a.Properties, err = unmarshalAutonomousDatabaseBasePropertiesClassification(val) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &a.SystemData) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &a.Tags) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &a.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseBackup. +func (a AutonomousDatabaseBackup) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", a.ID) + populate(objectMap, "name", a.Name) + populate(objectMap, "properties", a.Properties) + populate(objectMap, "systemData", a.SystemData) + populate(objectMap, "type", a.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseBackup. +func (a *AutonomousDatabaseBackup) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &a.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &a.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &a.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &a.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &a.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseBackupListResult. +func (a AutonomousDatabaseBackupListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", a.NextLink) + populate(objectMap, "value", a.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseBackupListResult. +func (a *AutonomousDatabaseBackupListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &a.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &a.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseBackupProperties. +func (a AutonomousDatabaseBackupProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "autonomousDatabaseOcid", a.AutonomousDatabaseOcid) + populate(objectMap, "backupType", a.BackupType) + populate(objectMap, "databaseSizeInTbs", a.DatabaseSizeInTbs) + populate(objectMap, "dbVersion", a.DbVersion) + populate(objectMap, "displayName", a.DisplayName) + populate(objectMap, "isAutomatic", a.IsAutomatic) + populate(objectMap, "isRestorable", a.IsRestorable) + populate(objectMap, "lifecycleDetails", a.LifecycleDetails) + populate(objectMap, "lifecycleState", a.LifecycleState) + populate(objectMap, "ocid", a.Ocid) + populate(objectMap, "provisioningState", a.ProvisioningState) + populate(objectMap, "retentionPeriodInDays", a.RetentionPeriodInDays) + populate(objectMap, "sizeInTbs", a.SizeInTbs) + populateDateTimeRFC3339(objectMap, "timeAvailableTil", a.TimeAvailableTil) + populate(objectMap, "timeEnded", a.TimeEnded) + populate(objectMap, "timeStarted", a.TimeStarted) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseBackupProperties. +func (a *AutonomousDatabaseBackupProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "autonomousDatabaseOcid": + err = unpopulate(val, "AutonomousDatabaseOcid", &a.AutonomousDatabaseOcid) + delete(rawMsg, key) + case "backupType": + err = unpopulate(val, "BackupType", &a.BackupType) + delete(rawMsg, key) + case "databaseSizeInTbs": + err = unpopulate(val, "DatabaseSizeInTbs", &a.DatabaseSizeInTbs) + delete(rawMsg, key) + case "dbVersion": + err = unpopulate(val, "DbVersion", &a.DbVersion) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &a.DisplayName) + delete(rawMsg, key) + case "isAutomatic": + err = unpopulate(val, "IsAutomatic", &a.IsAutomatic) + delete(rawMsg, key) + case "isRestorable": + err = unpopulate(val, "IsRestorable", &a.IsRestorable) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &a.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &a.LifecycleState) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &a.Ocid) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &a.ProvisioningState) + delete(rawMsg, key) + case "retentionPeriodInDays": + err = unpopulate(val, "RetentionPeriodInDays", &a.RetentionPeriodInDays) + delete(rawMsg, key) + case "sizeInTbs": + err = unpopulate(val, "SizeInTbs", &a.SizeInTbs) + delete(rawMsg, key) + case "timeAvailableTil": + err = unpopulateDateTimeRFC3339(val, "TimeAvailableTil", &a.TimeAvailableTil) + delete(rawMsg, key) + case "timeEnded": + err = unpopulate(val, "TimeEnded", &a.TimeEnded) + delete(rawMsg, key) + case "timeStarted": + err = unpopulate(val, "TimeStarted", &a.TimeStarted) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseBackupUpdate. +func (a AutonomousDatabaseBackupUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "properties", a.Properties) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseBackupUpdate. +func (a *AutonomousDatabaseBackupUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "properties": + err = unpopulate(val, "Properties", &a.Properties) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseBackupUpdateProperties. +func (a AutonomousDatabaseBackupUpdateProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "retentionPeriodInDays", a.RetentionPeriodInDays) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseBackupUpdateProperties. +func (a *AutonomousDatabaseBackupUpdateProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "retentionPeriodInDays": + err = unpopulate(val, "RetentionPeriodInDays", &a.RetentionPeriodInDays) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseBaseProperties. +func (a AutonomousDatabaseBaseProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "actualUsedDataStorageSizeInTbs", a.ActualUsedDataStorageSizeInTbs) + populate(objectMap, "adminPassword", a.AdminPassword) + populate(objectMap, "allocatedStorageSizeInTbs", a.AllocatedStorageSizeInTbs) + populate(objectMap, "apexDetails", a.ApexDetails) + populate(objectMap, "autonomousDatabaseId", a.AutonomousDatabaseID) + populate(objectMap, "autonomousMaintenanceScheduleType", a.AutonomousMaintenanceScheduleType) + populate(objectMap, "availableUpgradeVersions", a.AvailableUpgradeVersions) + populate(objectMap, "backupRetentionPeriodInDays", a.BackupRetentionPeriodInDays) + populate(objectMap, "cpuCoreCount", a.CPUCoreCount) + populate(objectMap, "characterSet", a.CharacterSet) + populate(objectMap, "computeCount", a.ComputeCount) + populate(objectMap, "computeModel", a.ComputeModel) + populate(objectMap, "connectionStrings", a.ConnectionStrings) + populate(objectMap, "connectionUrls", a.ConnectionUrls) + populate(objectMap, "customerContacts", a.CustomerContacts) + populate(objectMap, "dataBaseType", a.DataBaseType) + populate(objectMap, "dataSafeStatus", a.DataSafeStatus) + populate(objectMap, "dataStorageSizeInGbs", a.DataStorageSizeInGbs) + populate(objectMap, "dataStorageSizeInTbs", a.DataStorageSizeInTbs) + populate(objectMap, "databaseEdition", a.DatabaseEdition) + populate(objectMap, "dbVersion", a.DbVersion) + populate(objectMap, "dbWorkload", a.DbWorkload) + populate(objectMap, "displayName", a.DisplayName) + populate(objectMap, "failedDataRecoveryInSeconds", a.FailedDataRecoveryInSeconds) + populate(objectMap, "inMemoryAreaInGbs", a.InMemoryAreaInGbs) + populate(objectMap, "isAutoScalingEnabled", a.IsAutoScalingEnabled) + populate(objectMap, "isAutoScalingForStorageEnabled", a.IsAutoScalingForStorageEnabled) + populate(objectMap, "isLocalDataGuardEnabled", a.IsLocalDataGuardEnabled) + populate(objectMap, "isMtlsConnectionRequired", a.IsMtlsConnectionRequired) + populate(objectMap, "isPreview", a.IsPreview) + populate(objectMap, "isPreviewVersionWithServiceTermsAccepted", a.IsPreviewVersionWithServiceTermsAccepted) + populate(objectMap, "isRemoteDataGuardEnabled", a.IsRemoteDataGuardEnabled) + populate(objectMap, "licenseModel", a.LicenseModel) + populate(objectMap, "lifecycleDetails", a.LifecycleDetails) + populate(objectMap, "lifecycleState", a.LifecycleState) + populate(objectMap, "localAdgAutoFailoverMaxDataLossLimit", a.LocalAdgAutoFailoverMaxDataLossLimit) + populate(objectMap, "localDisasterRecoveryType", a.LocalDisasterRecoveryType) + populate(objectMap, "localStandbyDb", a.LocalStandbyDb) + populate(objectMap, "longTermBackupSchedule", a.LongTermBackupSchedule) + populate(objectMap, "memoryPerOracleComputeUnitInGbs", a.MemoryPerOracleComputeUnitInGbs) + populate(objectMap, "ncharacterSet", a.NcharacterSet) + populateDateTimeRFC3339(objectMap, "nextLongTermBackupTimeStamp", a.NextLongTermBackupTimeStamp) + populate(objectMap, "ociUrl", a.OciURL) + populate(objectMap, "ocid", a.Ocid) + populate(objectMap, "openMode", a.OpenMode) + populate(objectMap, "operationsInsightsStatus", a.OperationsInsightsStatus) + populate(objectMap, "peerDbId", a.PeerDbID) + populate(objectMap, "peerDbIds", a.PeerDbIDs) + populate(objectMap, "permissionLevel", a.PermissionLevel) + populate(objectMap, "privateEndpoint", a.PrivateEndpoint) + populate(objectMap, "privateEndpointIp", a.PrivateEndpointIP) + populate(objectMap, "privateEndpointLabel", a.PrivateEndpointLabel) + populate(objectMap, "provisionableCpus", a.ProvisionableCpus) + populate(objectMap, "provisioningState", a.ProvisioningState) + populate(objectMap, "remoteDisasterRecoveryConfiguration", a.RemoteDisasterRecoveryConfiguration) + populate(objectMap, "role", a.Role) + populate(objectMap, "sqlWebDeveloperUrl", a.SQLWebDeveloperURL) + populate(objectMap, "scheduledOperations", a.ScheduledOperations) + populate(objectMap, "serviceConsoleUrl", a.ServiceConsoleURL) + populate(objectMap, "subnetId", a.SubnetID) + populate(objectMap, "supportedRegionsToCloneTo", a.SupportedRegionsToCloneTo) + populateDateTimeRFC3339(objectMap, "timeCreated", a.TimeCreated) + populate(objectMap, "timeDataGuardRoleChanged", a.TimeDataGuardRoleChanged) + populate(objectMap, "timeDeletionOfFreeAutonomousDatabase", a.TimeDeletionOfFreeAutonomousDatabase) + populateDateTimeRFC3339(objectMap, "timeDisasterRecoveryRoleChanged", a.TimeDisasterRecoveryRoleChanged) + populate(objectMap, "timeLocalDataGuardEnabled", a.TimeLocalDataGuardEnabled) + populateDateTimeRFC3339(objectMap, "timeMaintenanceBegin", a.TimeMaintenanceBegin) + populateDateTimeRFC3339(objectMap, "timeMaintenanceEnd", a.TimeMaintenanceEnd) + populate(objectMap, "timeOfLastFailover", a.TimeOfLastFailover) + populate(objectMap, "timeOfLastRefresh", a.TimeOfLastRefresh) + populate(objectMap, "timeOfLastRefreshPoint", a.TimeOfLastRefreshPoint) + populate(objectMap, "timeOfLastSwitchover", a.TimeOfLastSwitchover) + populate(objectMap, "timeReclamationOfFreeAutonomousDatabase", a.TimeReclamationOfFreeAutonomousDatabase) + populate(objectMap, "usedDataStorageSizeInGbs", a.UsedDataStorageSizeInGbs) + populate(objectMap, "usedDataStorageSizeInTbs", a.UsedDataStorageSizeInTbs) + populate(objectMap, "vnetId", a.VnetID) + populate(objectMap, "whitelistedIps", a.WhitelistedIPs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseBaseProperties. +func (a *AutonomousDatabaseBaseProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "actualUsedDataStorageSizeInTbs": + err = unpopulate(val, "ActualUsedDataStorageSizeInTbs", &a.ActualUsedDataStorageSizeInTbs) + delete(rawMsg, key) + case "adminPassword": + err = unpopulate(val, "AdminPassword", &a.AdminPassword) + delete(rawMsg, key) + case "allocatedStorageSizeInTbs": + err = unpopulate(val, "AllocatedStorageSizeInTbs", &a.AllocatedStorageSizeInTbs) + delete(rawMsg, key) + case "apexDetails": + err = unpopulate(val, "ApexDetails", &a.ApexDetails) + delete(rawMsg, key) + case "autonomousDatabaseId": + err = unpopulate(val, "AutonomousDatabaseID", &a.AutonomousDatabaseID) + delete(rawMsg, key) + case "autonomousMaintenanceScheduleType": + err = unpopulate(val, "AutonomousMaintenanceScheduleType", &a.AutonomousMaintenanceScheduleType) + delete(rawMsg, key) + case "availableUpgradeVersions": + err = unpopulate(val, "AvailableUpgradeVersions", &a.AvailableUpgradeVersions) + delete(rawMsg, key) + case "backupRetentionPeriodInDays": + err = unpopulate(val, "BackupRetentionPeriodInDays", &a.BackupRetentionPeriodInDays) + delete(rawMsg, key) + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &a.CPUCoreCount) + delete(rawMsg, key) + case "characterSet": + err = unpopulate(val, "CharacterSet", &a.CharacterSet) + delete(rawMsg, key) + case "computeCount": + err = unpopulate(val, "ComputeCount", &a.ComputeCount) + delete(rawMsg, key) + case "computeModel": + err = unpopulate(val, "ComputeModel", &a.ComputeModel) + delete(rawMsg, key) + case "connectionStrings": + err = unpopulate(val, "ConnectionStrings", &a.ConnectionStrings) + delete(rawMsg, key) + case "connectionUrls": + err = unpopulate(val, "ConnectionUrls", &a.ConnectionUrls) + delete(rawMsg, key) + case "customerContacts": + err = unpopulate(val, "CustomerContacts", &a.CustomerContacts) + delete(rawMsg, key) + case "dataBaseType": + err = unpopulate(val, "DataBaseType", &a.DataBaseType) + delete(rawMsg, key) + case "dataSafeStatus": + err = unpopulate(val, "DataSafeStatus", &a.DataSafeStatus) + delete(rawMsg, key) + case "dataStorageSizeInGbs": + err = unpopulate(val, "DataStorageSizeInGbs", &a.DataStorageSizeInGbs) + delete(rawMsg, key) + case "dataStorageSizeInTbs": + err = unpopulate(val, "DataStorageSizeInTbs", &a.DataStorageSizeInTbs) + delete(rawMsg, key) + case "databaseEdition": + err = unpopulate(val, "DatabaseEdition", &a.DatabaseEdition) + delete(rawMsg, key) + case "dbVersion": + err = unpopulate(val, "DbVersion", &a.DbVersion) + delete(rawMsg, key) + case "dbWorkload": + err = unpopulate(val, "DbWorkload", &a.DbWorkload) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &a.DisplayName) + delete(rawMsg, key) + case "failedDataRecoveryInSeconds": + err = unpopulate(val, "FailedDataRecoveryInSeconds", &a.FailedDataRecoveryInSeconds) + delete(rawMsg, key) + case "inMemoryAreaInGbs": + err = unpopulate(val, "InMemoryAreaInGbs", &a.InMemoryAreaInGbs) + delete(rawMsg, key) + case "isAutoScalingEnabled": + err = unpopulate(val, "IsAutoScalingEnabled", &a.IsAutoScalingEnabled) + delete(rawMsg, key) + case "isAutoScalingForStorageEnabled": + err = unpopulate(val, "IsAutoScalingForStorageEnabled", &a.IsAutoScalingForStorageEnabled) + delete(rawMsg, key) + case "isLocalDataGuardEnabled": + err = unpopulate(val, "IsLocalDataGuardEnabled", &a.IsLocalDataGuardEnabled) + delete(rawMsg, key) + case "isMtlsConnectionRequired": + err = unpopulate(val, "IsMtlsConnectionRequired", &a.IsMtlsConnectionRequired) + delete(rawMsg, key) + case "isPreview": + err = unpopulate(val, "IsPreview", &a.IsPreview) + delete(rawMsg, key) + case "isPreviewVersionWithServiceTermsAccepted": + err = unpopulate(val, "IsPreviewVersionWithServiceTermsAccepted", &a.IsPreviewVersionWithServiceTermsAccepted) + delete(rawMsg, key) + case "isRemoteDataGuardEnabled": + err = unpopulate(val, "IsRemoteDataGuardEnabled", &a.IsRemoteDataGuardEnabled) + delete(rawMsg, key) + case "licenseModel": + err = unpopulate(val, "LicenseModel", &a.LicenseModel) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &a.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &a.LifecycleState) + delete(rawMsg, key) + case "localAdgAutoFailoverMaxDataLossLimit": + err = unpopulate(val, "LocalAdgAutoFailoverMaxDataLossLimit", &a.LocalAdgAutoFailoverMaxDataLossLimit) + delete(rawMsg, key) + case "localDisasterRecoveryType": + err = unpopulate(val, "LocalDisasterRecoveryType", &a.LocalDisasterRecoveryType) + delete(rawMsg, key) + case "localStandbyDb": + err = unpopulate(val, "LocalStandbyDb", &a.LocalStandbyDb) + delete(rawMsg, key) + case "longTermBackupSchedule": + err = unpopulate(val, "LongTermBackupSchedule", &a.LongTermBackupSchedule) + delete(rawMsg, key) + case "memoryPerOracleComputeUnitInGbs": + err = unpopulate(val, "MemoryPerOracleComputeUnitInGbs", &a.MemoryPerOracleComputeUnitInGbs) + delete(rawMsg, key) + case "ncharacterSet": + err = unpopulate(val, "NcharacterSet", &a.NcharacterSet) + delete(rawMsg, key) + case "nextLongTermBackupTimeStamp": + err = unpopulateDateTimeRFC3339(val, "NextLongTermBackupTimeStamp", &a.NextLongTermBackupTimeStamp) + delete(rawMsg, key) + case "ociUrl": + err = unpopulate(val, "OciURL", &a.OciURL) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &a.Ocid) + delete(rawMsg, key) + case "openMode": + err = unpopulate(val, "OpenMode", &a.OpenMode) + delete(rawMsg, key) + case "operationsInsightsStatus": + err = unpopulate(val, "OperationsInsightsStatus", &a.OperationsInsightsStatus) + delete(rawMsg, key) + case "peerDbId": + err = unpopulate(val, "PeerDbID", &a.PeerDbID) + delete(rawMsg, key) + case "peerDbIds": + err = unpopulate(val, "PeerDbIDs", &a.PeerDbIDs) + delete(rawMsg, key) + case "permissionLevel": + err = unpopulate(val, "PermissionLevel", &a.PermissionLevel) + delete(rawMsg, key) + case "privateEndpoint": + err = unpopulate(val, "PrivateEndpoint", &a.PrivateEndpoint) + delete(rawMsg, key) + case "privateEndpointIp": + err = unpopulate(val, "PrivateEndpointIP", &a.PrivateEndpointIP) + delete(rawMsg, key) + case "privateEndpointLabel": + err = unpopulate(val, "PrivateEndpointLabel", &a.PrivateEndpointLabel) + delete(rawMsg, key) + case "provisionableCpus": + err = unpopulate(val, "ProvisionableCpus", &a.ProvisionableCpus) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &a.ProvisioningState) + delete(rawMsg, key) + case "remoteDisasterRecoveryConfiguration": + err = unpopulate(val, "RemoteDisasterRecoveryConfiguration", &a.RemoteDisasterRecoveryConfiguration) + delete(rawMsg, key) + case "role": + err = unpopulate(val, "Role", &a.Role) + delete(rawMsg, key) + case "sqlWebDeveloperUrl": + err = unpopulate(val, "SQLWebDeveloperURL", &a.SQLWebDeveloperURL) + delete(rawMsg, key) + case "scheduledOperations": + err = unpopulate(val, "ScheduledOperations", &a.ScheduledOperations) + delete(rawMsg, key) + case "serviceConsoleUrl": + err = unpopulate(val, "ServiceConsoleURL", &a.ServiceConsoleURL) + delete(rawMsg, key) + case "subnetId": + err = unpopulate(val, "SubnetID", &a.SubnetID) + delete(rawMsg, key) + case "supportedRegionsToCloneTo": + err = unpopulate(val, "SupportedRegionsToCloneTo", &a.SupportedRegionsToCloneTo) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &a.TimeCreated) + delete(rawMsg, key) + case "timeDataGuardRoleChanged": + err = unpopulate(val, "TimeDataGuardRoleChanged", &a.TimeDataGuardRoleChanged) + delete(rawMsg, key) + case "timeDeletionOfFreeAutonomousDatabase": + err = unpopulate(val, "TimeDeletionOfFreeAutonomousDatabase", &a.TimeDeletionOfFreeAutonomousDatabase) + delete(rawMsg, key) + case "timeDisasterRecoveryRoleChanged": + err = unpopulateDateTimeRFC3339(val, "TimeDisasterRecoveryRoleChanged", &a.TimeDisasterRecoveryRoleChanged) + delete(rawMsg, key) + case "timeLocalDataGuardEnabled": + err = unpopulate(val, "TimeLocalDataGuardEnabled", &a.TimeLocalDataGuardEnabled) + delete(rawMsg, key) + case "timeMaintenanceBegin": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceBegin", &a.TimeMaintenanceBegin) + delete(rawMsg, key) + case "timeMaintenanceEnd": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceEnd", &a.TimeMaintenanceEnd) + delete(rawMsg, key) + case "timeOfLastFailover": + err = unpopulate(val, "TimeOfLastFailover", &a.TimeOfLastFailover) + delete(rawMsg, key) + case "timeOfLastRefresh": + err = unpopulate(val, "TimeOfLastRefresh", &a.TimeOfLastRefresh) + delete(rawMsg, key) + case "timeOfLastRefreshPoint": + err = unpopulate(val, "TimeOfLastRefreshPoint", &a.TimeOfLastRefreshPoint) + delete(rawMsg, key) + case "timeOfLastSwitchover": + err = unpopulate(val, "TimeOfLastSwitchover", &a.TimeOfLastSwitchover) + delete(rawMsg, key) + case "timeReclamationOfFreeAutonomousDatabase": + err = unpopulate(val, "TimeReclamationOfFreeAutonomousDatabase", &a.TimeReclamationOfFreeAutonomousDatabase) + delete(rawMsg, key) + case "usedDataStorageSizeInGbs": + err = unpopulate(val, "UsedDataStorageSizeInGbs", &a.UsedDataStorageSizeInGbs) + delete(rawMsg, key) + case "usedDataStorageSizeInTbs": + err = unpopulate(val, "UsedDataStorageSizeInTbs", &a.UsedDataStorageSizeInTbs) + delete(rawMsg, key) + case "vnetId": + err = unpopulate(val, "VnetID", &a.VnetID) + delete(rawMsg, key) + case "whitelistedIps": + err = unpopulate(val, "WhitelistedIPs", &a.WhitelistedIPs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseCharacterSet. +func (a AutonomousDatabaseCharacterSet) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", a.ID) + populate(objectMap, "name", a.Name) + populate(objectMap, "properties", a.Properties) + populate(objectMap, "systemData", a.SystemData) + populate(objectMap, "type", a.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseCharacterSet. +func (a *AutonomousDatabaseCharacterSet) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &a.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &a.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &a.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &a.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &a.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseCharacterSetListResult. +func (a AutonomousDatabaseCharacterSetListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", a.NextLink) + populate(objectMap, "value", a.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseCharacterSetListResult. +func (a *AutonomousDatabaseCharacterSetListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &a.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &a.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseCharacterSetProperties. +func (a AutonomousDatabaseCharacterSetProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "characterSet", a.CharacterSet) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseCharacterSetProperties. +func (a *AutonomousDatabaseCharacterSetProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "characterSet": + err = unpopulate(val, "CharacterSet", &a.CharacterSet) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseCloneProperties. +func (a AutonomousDatabaseCloneProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "actualUsedDataStorageSizeInTbs", a.ActualUsedDataStorageSizeInTbs) + populate(objectMap, "adminPassword", a.AdminPassword) + populate(objectMap, "allocatedStorageSizeInTbs", a.AllocatedStorageSizeInTbs) + populate(objectMap, "apexDetails", a.ApexDetails) + populate(objectMap, "autonomousDatabaseId", a.AutonomousDatabaseID) + populate(objectMap, "autonomousMaintenanceScheduleType", a.AutonomousMaintenanceScheduleType) + populate(objectMap, "availableUpgradeVersions", a.AvailableUpgradeVersions) + populate(objectMap, "backupRetentionPeriodInDays", a.BackupRetentionPeriodInDays) + populate(objectMap, "cpuCoreCount", a.CPUCoreCount) + populate(objectMap, "characterSet", a.CharacterSet) + populate(objectMap, "cloneType", a.CloneType) + populate(objectMap, "computeCount", a.ComputeCount) + populate(objectMap, "computeModel", a.ComputeModel) + populate(objectMap, "connectionStrings", a.ConnectionStrings) + populate(objectMap, "connectionUrls", a.ConnectionUrls) + populate(objectMap, "customerContacts", a.CustomerContacts) + objectMap["dataBaseType"] = DataBaseTypeClone + populate(objectMap, "dataSafeStatus", a.DataSafeStatus) + populate(objectMap, "dataStorageSizeInGbs", a.DataStorageSizeInGbs) + populate(objectMap, "dataStorageSizeInTbs", a.DataStorageSizeInTbs) + populate(objectMap, "databaseEdition", a.DatabaseEdition) + populate(objectMap, "dbVersion", a.DbVersion) + populate(objectMap, "dbWorkload", a.DbWorkload) + populate(objectMap, "displayName", a.DisplayName) + populate(objectMap, "failedDataRecoveryInSeconds", a.FailedDataRecoveryInSeconds) + populate(objectMap, "inMemoryAreaInGbs", a.InMemoryAreaInGbs) + populate(objectMap, "isAutoScalingEnabled", a.IsAutoScalingEnabled) + populate(objectMap, "isAutoScalingForStorageEnabled", a.IsAutoScalingForStorageEnabled) + populate(objectMap, "isLocalDataGuardEnabled", a.IsLocalDataGuardEnabled) + populate(objectMap, "isMtlsConnectionRequired", a.IsMtlsConnectionRequired) + populate(objectMap, "isPreview", a.IsPreview) + populate(objectMap, "isPreviewVersionWithServiceTermsAccepted", a.IsPreviewVersionWithServiceTermsAccepted) + populate(objectMap, "isReconnectCloneEnabled", a.IsReconnectCloneEnabled) + populate(objectMap, "isRefreshableClone", a.IsRefreshableClone) + populate(objectMap, "isRemoteDataGuardEnabled", a.IsRemoteDataGuardEnabled) + populate(objectMap, "licenseModel", a.LicenseModel) + populate(objectMap, "lifecycleDetails", a.LifecycleDetails) + populate(objectMap, "lifecycleState", a.LifecycleState) + populate(objectMap, "localAdgAutoFailoverMaxDataLossLimit", a.LocalAdgAutoFailoverMaxDataLossLimit) + populate(objectMap, "localDisasterRecoveryType", a.LocalDisasterRecoveryType) + populate(objectMap, "localStandbyDb", a.LocalStandbyDb) + populate(objectMap, "longTermBackupSchedule", a.LongTermBackupSchedule) + populate(objectMap, "memoryPerOracleComputeUnitInGbs", a.MemoryPerOracleComputeUnitInGbs) + populate(objectMap, "ncharacterSet", a.NcharacterSet) + populateDateTimeRFC3339(objectMap, "nextLongTermBackupTimeStamp", a.NextLongTermBackupTimeStamp) + populate(objectMap, "ociUrl", a.OciURL) + populate(objectMap, "ocid", a.Ocid) + populate(objectMap, "openMode", a.OpenMode) + populate(objectMap, "operationsInsightsStatus", a.OperationsInsightsStatus) + populate(objectMap, "peerDbId", a.PeerDbID) + populate(objectMap, "peerDbIds", a.PeerDbIDs) + populate(objectMap, "permissionLevel", a.PermissionLevel) + populate(objectMap, "privateEndpoint", a.PrivateEndpoint) + populate(objectMap, "privateEndpointIp", a.PrivateEndpointIP) + populate(objectMap, "privateEndpointLabel", a.PrivateEndpointLabel) + populate(objectMap, "provisionableCpus", a.ProvisionableCpus) + populate(objectMap, "provisioningState", a.ProvisioningState) + populate(objectMap, "refreshableModel", a.RefreshableModel) + populate(objectMap, "refreshableStatus", a.RefreshableStatus) + populate(objectMap, "remoteDisasterRecoveryConfiguration", a.RemoteDisasterRecoveryConfiguration) + populate(objectMap, "role", a.Role) + populate(objectMap, "sqlWebDeveloperUrl", a.SQLWebDeveloperURL) + populate(objectMap, "scheduledOperations", a.ScheduledOperations) + populate(objectMap, "serviceConsoleUrl", a.ServiceConsoleURL) + populate(objectMap, "source", a.Source) + populate(objectMap, "sourceId", a.SourceID) + populate(objectMap, "subnetId", a.SubnetID) + populate(objectMap, "supportedRegionsToCloneTo", a.SupportedRegionsToCloneTo) + populateDateTimeRFC3339(objectMap, "timeCreated", a.TimeCreated) + populate(objectMap, "timeDataGuardRoleChanged", a.TimeDataGuardRoleChanged) + populate(objectMap, "timeDeletionOfFreeAutonomousDatabase", a.TimeDeletionOfFreeAutonomousDatabase) + populateDateTimeRFC3339(objectMap, "timeDisasterRecoveryRoleChanged", a.TimeDisasterRecoveryRoleChanged) + populate(objectMap, "timeLocalDataGuardEnabled", a.TimeLocalDataGuardEnabled) + populateDateTimeRFC3339(objectMap, "timeMaintenanceBegin", a.TimeMaintenanceBegin) + populateDateTimeRFC3339(objectMap, "timeMaintenanceEnd", a.TimeMaintenanceEnd) + populate(objectMap, "timeOfLastFailover", a.TimeOfLastFailover) + populate(objectMap, "timeOfLastRefresh", a.TimeOfLastRefresh) + populate(objectMap, "timeOfLastRefreshPoint", a.TimeOfLastRefreshPoint) + populate(objectMap, "timeOfLastSwitchover", a.TimeOfLastSwitchover) + populate(objectMap, "timeReclamationOfFreeAutonomousDatabase", a.TimeReclamationOfFreeAutonomousDatabase) + populate(objectMap, "timeUntilReconnectCloneEnabled", a.TimeUntilReconnectCloneEnabled) + populate(objectMap, "usedDataStorageSizeInGbs", a.UsedDataStorageSizeInGbs) + populate(objectMap, "usedDataStorageSizeInTbs", a.UsedDataStorageSizeInTbs) + populate(objectMap, "vnetId", a.VnetID) + populate(objectMap, "whitelistedIps", a.WhitelistedIPs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseCloneProperties. +func (a *AutonomousDatabaseCloneProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "actualUsedDataStorageSizeInTbs": + err = unpopulate(val, "ActualUsedDataStorageSizeInTbs", &a.ActualUsedDataStorageSizeInTbs) + delete(rawMsg, key) + case "adminPassword": + err = unpopulate(val, "AdminPassword", &a.AdminPassword) + delete(rawMsg, key) + case "allocatedStorageSizeInTbs": + err = unpopulate(val, "AllocatedStorageSizeInTbs", &a.AllocatedStorageSizeInTbs) + delete(rawMsg, key) + case "apexDetails": + err = unpopulate(val, "ApexDetails", &a.ApexDetails) + delete(rawMsg, key) + case "autonomousDatabaseId": + err = unpopulate(val, "AutonomousDatabaseID", &a.AutonomousDatabaseID) + delete(rawMsg, key) + case "autonomousMaintenanceScheduleType": + err = unpopulate(val, "AutonomousMaintenanceScheduleType", &a.AutonomousMaintenanceScheduleType) + delete(rawMsg, key) + case "availableUpgradeVersions": + err = unpopulate(val, "AvailableUpgradeVersions", &a.AvailableUpgradeVersions) + delete(rawMsg, key) + case "backupRetentionPeriodInDays": + err = unpopulate(val, "BackupRetentionPeriodInDays", &a.BackupRetentionPeriodInDays) + delete(rawMsg, key) + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &a.CPUCoreCount) + delete(rawMsg, key) + case "characterSet": + err = unpopulate(val, "CharacterSet", &a.CharacterSet) + delete(rawMsg, key) + case "cloneType": + err = unpopulate(val, "CloneType", &a.CloneType) + delete(rawMsg, key) + case "computeCount": + err = unpopulate(val, "ComputeCount", &a.ComputeCount) + delete(rawMsg, key) + case "computeModel": + err = unpopulate(val, "ComputeModel", &a.ComputeModel) + delete(rawMsg, key) + case "connectionStrings": + err = unpopulate(val, "ConnectionStrings", &a.ConnectionStrings) + delete(rawMsg, key) + case "connectionUrls": + err = unpopulate(val, "ConnectionUrls", &a.ConnectionUrls) + delete(rawMsg, key) + case "customerContacts": + err = unpopulate(val, "CustomerContacts", &a.CustomerContacts) + delete(rawMsg, key) + case "dataBaseType": + err = unpopulate(val, "DataBaseType", &a.DataBaseType) + delete(rawMsg, key) + case "dataSafeStatus": + err = unpopulate(val, "DataSafeStatus", &a.DataSafeStatus) + delete(rawMsg, key) + case "dataStorageSizeInGbs": + err = unpopulate(val, "DataStorageSizeInGbs", &a.DataStorageSizeInGbs) + delete(rawMsg, key) + case "dataStorageSizeInTbs": + err = unpopulate(val, "DataStorageSizeInTbs", &a.DataStorageSizeInTbs) + delete(rawMsg, key) + case "databaseEdition": + err = unpopulate(val, "DatabaseEdition", &a.DatabaseEdition) + delete(rawMsg, key) + case "dbVersion": + err = unpopulate(val, "DbVersion", &a.DbVersion) + delete(rawMsg, key) + case "dbWorkload": + err = unpopulate(val, "DbWorkload", &a.DbWorkload) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &a.DisplayName) + delete(rawMsg, key) + case "failedDataRecoveryInSeconds": + err = unpopulate(val, "FailedDataRecoveryInSeconds", &a.FailedDataRecoveryInSeconds) + delete(rawMsg, key) + case "inMemoryAreaInGbs": + err = unpopulate(val, "InMemoryAreaInGbs", &a.InMemoryAreaInGbs) + delete(rawMsg, key) + case "isAutoScalingEnabled": + err = unpopulate(val, "IsAutoScalingEnabled", &a.IsAutoScalingEnabled) + delete(rawMsg, key) + case "isAutoScalingForStorageEnabled": + err = unpopulate(val, "IsAutoScalingForStorageEnabled", &a.IsAutoScalingForStorageEnabled) + delete(rawMsg, key) + case "isLocalDataGuardEnabled": + err = unpopulate(val, "IsLocalDataGuardEnabled", &a.IsLocalDataGuardEnabled) + delete(rawMsg, key) + case "isMtlsConnectionRequired": + err = unpopulate(val, "IsMtlsConnectionRequired", &a.IsMtlsConnectionRequired) + delete(rawMsg, key) + case "isPreview": + err = unpopulate(val, "IsPreview", &a.IsPreview) + delete(rawMsg, key) + case "isPreviewVersionWithServiceTermsAccepted": + err = unpopulate(val, "IsPreviewVersionWithServiceTermsAccepted", &a.IsPreviewVersionWithServiceTermsAccepted) + delete(rawMsg, key) + case "isReconnectCloneEnabled": + err = unpopulate(val, "IsReconnectCloneEnabled", &a.IsReconnectCloneEnabled) + delete(rawMsg, key) + case "isRefreshableClone": + err = unpopulate(val, "IsRefreshableClone", &a.IsRefreshableClone) + delete(rawMsg, key) + case "isRemoteDataGuardEnabled": + err = unpopulate(val, "IsRemoteDataGuardEnabled", &a.IsRemoteDataGuardEnabled) + delete(rawMsg, key) + case "licenseModel": + err = unpopulate(val, "LicenseModel", &a.LicenseModel) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &a.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &a.LifecycleState) + delete(rawMsg, key) + case "localAdgAutoFailoverMaxDataLossLimit": + err = unpopulate(val, "LocalAdgAutoFailoverMaxDataLossLimit", &a.LocalAdgAutoFailoverMaxDataLossLimit) + delete(rawMsg, key) + case "localDisasterRecoveryType": + err = unpopulate(val, "LocalDisasterRecoveryType", &a.LocalDisasterRecoveryType) + delete(rawMsg, key) + case "localStandbyDb": + err = unpopulate(val, "LocalStandbyDb", &a.LocalStandbyDb) + delete(rawMsg, key) + case "longTermBackupSchedule": + err = unpopulate(val, "LongTermBackupSchedule", &a.LongTermBackupSchedule) + delete(rawMsg, key) + case "memoryPerOracleComputeUnitInGbs": + err = unpopulate(val, "MemoryPerOracleComputeUnitInGbs", &a.MemoryPerOracleComputeUnitInGbs) + delete(rawMsg, key) + case "ncharacterSet": + err = unpopulate(val, "NcharacterSet", &a.NcharacterSet) + delete(rawMsg, key) + case "nextLongTermBackupTimeStamp": + err = unpopulateDateTimeRFC3339(val, "NextLongTermBackupTimeStamp", &a.NextLongTermBackupTimeStamp) + delete(rawMsg, key) + case "ociUrl": + err = unpopulate(val, "OciURL", &a.OciURL) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &a.Ocid) + delete(rawMsg, key) + case "openMode": + err = unpopulate(val, "OpenMode", &a.OpenMode) + delete(rawMsg, key) + case "operationsInsightsStatus": + err = unpopulate(val, "OperationsInsightsStatus", &a.OperationsInsightsStatus) + delete(rawMsg, key) + case "peerDbId": + err = unpopulate(val, "PeerDbID", &a.PeerDbID) + delete(rawMsg, key) + case "peerDbIds": + err = unpopulate(val, "PeerDbIDs", &a.PeerDbIDs) + delete(rawMsg, key) + case "permissionLevel": + err = unpopulate(val, "PermissionLevel", &a.PermissionLevel) + delete(rawMsg, key) + case "privateEndpoint": + err = unpopulate(val, "PrivateEndpoint", &a.PrivateEndpoint) + delete(rawMsg, key) + case "privateEndpointIp": + err = unpopulate(val, "PrivateEndpointIP", &a.PrivateEndpointIP) + delete(rawMsg, key) + case "privateEndpointLabel": + err = unpopulate(val, "PrivateEndpointLabel", &a.PrivateEndpointLabel) + delete(rawMsg, key) + case "provisionableCpus": + err = unpopulate(val, "ProvisionableCpus", &a.ProvisionableCpus) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &a.ProvisioningState) + delete(rawMsg, key) + case "refreshableModel": + err = unpopulate(val, "RefreshableModel", &a.RefreshableModel) + delete(rawMsg, key) + case "refreshableStatus": + err = unpopulate(val, "RefreshableStatus", &a.RefreshableStatus) + delete(rawMsg, key) + case "remoteDisasterRecoveryConfiguration": + err = unpopulate(val, "RemoteDisasterRecoveryConfiguration", &a.RemoteDisasterRecoveryConfiguration) + delete(rawMsg, key) + case "role": + err = unpopulate(val, "Role", &a.Role) + delete(rawMsg, key) + case "sqlWebDeveloperUrl": + err = unpopulate(val, "SQLWebDeveloperURL", &a.SQLWebDeveloperURL) + delete(rawMsg, key) + case "scheduledOperations": + err = unpopulate(val, "ScheduledOperations", &a.ScheduledOperations) + delete(rawMsg, key) + case "serviceConsoleUrl": + err = unpopulate(val, "ServiceConsoleURL", &a.ServiceConsoleURL) + delete(rawMsg, key) + case "source": + err = unpopulate(val, "Source", &a.Source) + delete(rawMsg, key) + case "sourceId": + err = unpopulate(val, "SourceID", &a.SourceID) + delete(rawMsg, key) + case "subnetId": + err = unpopulate(val, "SubnetID", &a.SubnetID) + delete(rawMsg, key) + case "supportedRegionsToCloneTo": + err = unpopulate(val, "SupportedRegionsToCloneTo", &a.SupportedRegionsToCloneTo) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &a.TimeCreated) + delete(rawMsg, key) + case "timeDataGuardRoleChanged": + err = unpopulate(val, "TimeDataGuardRoleChanged", &a.TimeDataGuardRoleChanged) + delete(rawMsg, key) + case "timeDeletionOfFreeAutonomousDatabase": + err = unpopulate(val, "TimeDeletionOfFreeAutonomousDatabase", &a.TimeDeletionOfFreeAutonomousDatabase) + delete(rawMsg, key) + case "timeDisasterRecoveryRoleChanged": + err = unpopulateDateTimeRFC3339(val, "TimeDisasterRecoveryRoleChanged", &a.TimeDisasterRecoveryRoleChanged) + delete(rawMsg, key) + case "timeLocalDataGuardEnabled": + err = unpopulate(val, "TimeLocalDataGuardEnabled", &a.TimeLocalDataGuardEnabled) + delete(rawMsg, key) + case "timeMaintenanceBegin": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceBegin", &a.TimeMaintenanceBegin) + delete(rawMsg, key) + case "timeMaintenanceEnd": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceEnd", &a.TimeMaintenanceEnd) + delete(rawMsg, key) + case "timeOfLastFailover": + err = unpopulate(val, "TimeOfLastFailover", &a.TimeOfLastFailover) + delete(rawMsg, key) + case "timeOfLastRefresh": + err = unpopulate(val, "TimeOfLastRefresh", &a.TimeOfLastRefresh) + delete(rawMsg, key) + case "timeOfLastRefreshPoint": + err = unpopulate(val, "TimeOfLastRefreshPoint", &a.TimeOfLastRefreshPoint) + delete(rawMsg, key) + case "timeOfLastSwitchover": + err = unpopulate(val, "TimeOfLastSwitchover", &a.TimeOfLastSwitchover) + delete(rawMsg, key) + case "timeReclamationOfFreeAutonomousDatabase": + err = unpopulate(val, "TimeReclamationOfFreeAutonomousDatabase", &a.TimeReclamationOfFreeAutonomousDatabase) + delete(rawMsg, key) + case "timeUntilReconnectCloneEnabled": + err = unpopulate(val, "TimeUntilReconnectCloneEnabled", &a.TimeUntilReconnectCloneEnabled) + delete(rawMsg, key) + case "usedDataStorageSizeInGbs": + err = unpopulate(val, "UsedDataStorageSizeInGbs", &a.UsedDataStorageSizeInGbs) + delete(rawMsg, key) + case "usedDataStorageSizeInTbs": + err = unpopulate(val, "UsedDataStorageSizeInTbs", &a.UsedDataStorageSizeInTbs) + delete(rawMsg, key) + case "vnetId": + err = unpopulate(val, "VnetID", &a.VnetID) + delete(rawMsg, key) + case "whitelistedIps": + err = unpopulate(val, "WhitelistedIPs", &a.WhitelistedIPs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseCrossRegionDisasterRecoveryProperties. +func (a AutonomousDatabaseCrossRegionDisasterRecoveryProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "actualUsedDataStorageSizeInTbs", a.ActualUsedDataStorageSizeInTbs) + populate(objectMap, "adminPassword", a.AdminPassword) + populate(objectMap, "allocatedStorageSizeInTbs", a.AllocatedStorageSizeInTbs) + populate(objectMap, "apexDetails", a.ApexDetails) + populate(objectMap, "autonomousDatabaseId", a.AutonomousDatabaseID) + populate(objectMap, "autonomousMaintenanceScheduleType", a.AutonomousMaintenanceScheduleType) + populate(objectMap, "availableUpgradeVersions", a.AvailableUpgradeVersions) + populate(objectMap, "backupRetentionPeriodInDays", a.BackupRetentionPeriodInDays) + populate(objectMap, "cpuCoreCount", a.CPUCoreCount) + populate(objectMap, "characterSet", a.CharacterSet) + populate(objectMap, "computeCount", a.ComputeCount) + populate(objectMap, "computeModel", a.ComputeModel) + populate(objectMap, "connectionStrings", a.ConnectionStrings) + populate(objectMap, "connectionUrls", a.ConnectionUrls) + populate(objectMap, "customerContacts", a.CustomerContacts) + objectMap["dataBaseType"] = DataBaseTypeCrossRegionDisasterRecovery + populate(objectMap, "dataSafeStatus", a.DataSafeStatus) + populate(objectMap, "dataStorageSizeInGbs", a.DataStorageSizeInGbs) + populate(objectMap, "dataStorageSizeInTbs", a.DataStorageSizeInTbs) + populate(objectMap, "databaseEdition", a.DatabaseEdition) + populate(objectMap, "dbVersion", a.DbVersion) + populate(objectMap, "dbWorkload", a.DbWorkload) + populate(objectMap, "displayName", a.DisplayName) + populate(objectMap, "failedDataRecoveryInSeconds", a.FailedDataRecoveryInSeconds) + populate(objectMap, "inMemoryAreaInGbs", a.InMemoryAreaInGbs) + populate(objectMap, "isAutoScalingEnabled", a.IsAutoScalingEnabled) + populate(objectMap, "isAutoScalingForStorageEnabled", a.IsAutoScalingForStorageEnabled) + populate(objectMap, "isLocalDataGuardEnabled", a.IsLocalDataGuardEnabled) + populate(objectMap, "isMtlsConnectionRequired", a.IsMtlsConnectionRequired) + populate(objectMap, "isPreview", a.IsPreview) + populate(objectMap, "isPreviewVersionWithServiceTermsAccepted", a.IsPreviewVersionWithServiceTermsAccepted) + populate(objectMap, "isRemoteDataGuardEnabled", a.IsRemoteDataGuardEnabled) + populate(objectMap, "isReplicateAutomaticBackups", a.IsReplicateAutomaticBackups) + populate(objectMap, "licenseModel", a.LicenseModel) + populate(objectMap, "lifecycleDetails", a.LifecycleDetails) + populate(objectMap, "lifecycleState", a.LifecycleState) + populate(objectMap, "localAdgAutoFailoverMaxDataLossLimit", a.LocalAdgAutoFailoverMaxDataLossLimit) + populate(objectMap, "localDisasterRecoveryType", a.LocalDisasterRecoveryType) + populate(objectMap, "localStandbyDb", a.LocalStandbyDb) + populate(objectMap, "longTermBackupSchedule", a.LongTermBackupSchedule) + populate(objectMap, "memoryPerOracleComputeUnitInGbs", a.MemoryPerOracleComputeUnitInGbs) + populate(objectMap, "ncharacterSet", a.NcharacterSet) + populateDateTimeRFC3339(objectMap, "nextLongTermBackupTimeStamp", a.NextLongTermBackupTimeStamp) + populate(objectMap, "ociUrl", a.OciURL) + populate(objectMap, "ocid", a.Ocid) + populate(objectMap, "openMode", a.OpenMode) + populate(objectMap, "operationsInsightsStatus", a.OperationsInsightsStatus) + populate(objectMap, "peerDbId", a.PeerDbID) + populate(objectMap, "peerDbIds", a.PeerDbIDs) + populate(objectMap, "permissionLevel", a.PermissionLevel) + populate(objectMap, "privateEndpoint", a.PrivateEndpoint) + populate(objectMap, "privateEndpointIp", a.PrivateEndpointIP) + populate(objectMap, "privateEndpointLabel", a.PrivateEndpointLabel) + populate(objectMap, "provisionableCpus", a.ProvisionableCpus) + populate(objectMap, "provisioningState", a.ProvisioningState) + populate(objectMap, "remoteDisasterRecoveryConfiguration", a.RemoteDisasterRecoveryConfiguration) + populate(objectMap, "remoteDisasterRecoveryType", a.RemoteDisasterRecoveryType) + populate(objectMap, "role", a.Role) + populate(objectMap, "sqlWebDeveloperUrl", a.SQLWebDeveloperURL) + populate(objectMap, "scheduledOperations", a.ScheduledOperations) + populate(objectMap, "serviceConsoleUrl", a.ServiceConsoleURL) + objectMap["source"] = SourceTypeCrossRegionDisasterRecovery + populate(objectMap, "sourceId", a.SourceID) + populate(objectMap, "sourceLocation", a.SourceLocation) + populate(objectMap, "sourceOcid", a.SourceOcid) + populate(objectMap, "subnetId", a.SubnetID) + populate(objectMap, "supportedRegionsToCloneTo", a.SupportedRegionsToCloneTo) + populateDateTimeRFC3339(objectMap, "timeCreated", a.TimeCreated) + populate(objectMap, "timeDataGuardRoleChanged", a.TimeDataGuardRoleChanged) + populate(objectMap, "timeDeletionOfFreeAutonomousDatabase", a.TimeDeletionOfFreeAutonomousDatabase) + populateDateTimeRFC3339(objectMap, "timeDisasterRecoveryRoleChanged", a.TimeDisasterRecoveryRoleChanged) + populate(objectMap, "timeLocalDataGuardEnabled", a.TimeLocalDataGuardEnabled) + populateDateTimeRFC3339(objectMap, "timeMaintenanceBegin", a.TimeMaintenanceBegin) + populateDateTimeRFC3339(objectMap, "timeMaintenanceEnd", a.TimeMaintenanceEnd) + populate(objectMap, "timeOfLastFailover", a.TimeOfLastFailover) + populate(objectMap, "timeOfLastRefresh", a.TimeOfLastRefresh) + populate(objectMap, "timeOfLastRefreshPoint", a.TimeOfLastRefreshPoint) + populate(objectMap, "timeOfLastSwitchover", a.TimeOfLastSwitchover) + populate(objectMap, "timeReclamationOfFreeAutonomousDatabase", a.TimeReclamationOfFreeAutonomousDatabase) + populate(objectMap, "usedDataStorageSizeInGbs", a.UsedDataStorageSizeInGbs) + populate(objectMap, "usedDataStorageSizeInTbs", a.UsedDataStorageSizeInTbs) + populate(objectMap, "vnetId", a.VnetID) + populate(objectMap, "whitelistedIps", a.WhitelistedIPs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseCrossRegionDisasterRecoveryProperties. +func (a *AutonomousDatabaseCrossRegionDisasterRecoveryProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "actualUsedDataStorageSizeInTbs": + err = unpopulate(val, "ActualUsedDataStorageSizeInTbs", &a.ActualUsedDataStorageSizeInTbs) + delete(rawMsg, key) + case "adminPassword": + err = unpopulate(val, "AdminPassword", &a.AdminPassword) + delete(rawMsg, key) + case "allocatedStorageSizeInTbs": + err = unpopulate(val, "AllocatedStorageSizeInTbs", &a.AllocatedStorageSizeInTbs) + delete(rawMsg, key) + case "apexDetails": + err = unpopulate(val, "ApexDetails", &a.ApexDetails) + delete(rawMsg, key) + case "autonomousDatabaseId": + err = unpopulate(val, "AutonomousDatabaseID", &a.AutonomousDatabaseID) + delete(rawMsg, key) + case "autonomousMaintenanceScheduleType": + err = unpopulate(val, "AutonomousMaintenanceScheduleType", &a.AutonomousMaintenanceScheduleType) + delete(rawMsg, key) + case "availableUpgradeVersions": + err = unpopulate(val, "AvailableUpgradeVersions", &a.AvailableUpgradeVersions) + delete(rawMsg, key) + case "backupRetentionPeriodInDays": + err = unpopulate(val, "BackupRetentionPeriodInDays", &a.BackupRetentionPeriodInDays) + delete(rawMsg, key) + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &a.CPUCoreCount) + delete(rawMsg, key) + case "characterSet": + err = unpopulate(val, "CharacterSet", &a.CharacterSet) + delete(rawMsg, key) + case "computeCount": + err = unpopulate(val, "ComputeCount", &a.ComputeCount) + delete(rawMsg, key) + case "computeModel": + err = unpopulate(val, "ComputeModel", &a.ComputeModel) + delete(rawMsg, key) + case "connectionStrings": + err = unpopulate(val, "ConnectionStrings", &a.ConnectionStrings) + delete(rawMsg, key) + case "connectionUrls": + err = unpopulate(val, "ConnectionUrls", &a.ConnectionUrls) + delete(rawMsg, key) + case "customerContacts": + err = unpopulate(val, "CustomerContacts", &a.CustomerContacts) + delete(rawMsg, key) + case "dataBaseType": + err = unpopulate(val, "DataBaseType", &a.DataBaseType) + delete(rawMsg, key) + case "dataSafeStatus": + err = unpopulate(val, "DataSafeStatus", &a.DataSafeStatus) + delete(rawMsg, key) + case "dataStorageSizeInGbs": + err = unpopulate(val, "DataStorageSizeInGbs", &a.DataStorageSizeInGbs) + delete(rawMsg, key) + case "dataStorageSizeInTbs": + err = unpopulate(val, "DataStorageSizeInTbs", &a.DataStorageSizeInTbs) + delete(rawMsg, key) + case "databaseEdition": + err = unpopulate(val, "DatabaseEdition", &a.DatabaseEdition) + delete(rawMsg, key) + case "dbVersion": + err = unpopulate(val, "DbVersion", &a.DbVersion) + delete(rawMsg, key) + case "dbWorkload": + err = unpopulate(val, "DbWorkload", &a.DbWorkload) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &a.DisplayName) + delete(rawMsg, key) + case "failedDataRecoveryInSeconds": + err = unpopulate(val, "FailedDataRecoveryInSeconds", &a.FailedDataRecoveryInSeconds) + delete(rawMsg, key) + case "inMemoryAreaInGbs": + err = unpopulate(val, "InMemoryAreaInGbs", &a.InMemoryAreaInGbs) + delete(rawMsg, key) + case "isAutoScalingEnabled": + err = unpopulate(val, "IsAutoScalingEnabled", &a.IsAutoScalingEnabled) + delete(rawMsg, key) + case "isAutoScalingForStorageEnabled": + err = unpopulate(val, "IsAutoScalingForStorageEnabled", &a.IsAutoScalingForStorageEnabled) + delete(rawMsg, key) + case "isLocalDataGuardEnabled": + err = unpopulate(val, "IsLocalDataGuardEnabled", &a.IsLocalDataGuardEnabled) + delete(rawMsg, key) + case "isMtlsConnectionRequired": + err = unpopulate(val, "IsMtlsConnectionRequired", &a.IsMtlsConnectionRequired) + delete(rawMsg, key) + case "isPreview": + err = unpopulate(val, "IsPreview", &a.IsPreview) + delete(rawMsg, key) + case "isPreviewVersionWithServiceTermsAccepted": + err = unpopulate(val, "IsPreviewVersionWithServiceTermsAccepted", &a.IsPreviewVersionWithServiceTermsAccepted) + delete(rawMsg, key) + case "isRemoteDataGuardEnabled": + err = unpopulate(val, "IsRemoteDataGuardEnabled", &a.IsRemoteDataGuardEnabled) + delete(rawMsg, key) + case "isReplicateAutomaticBackups": + err = unpopulate(val, "IsReplicateAutomaticBackups", &a.IsReplicateAutomaticBackups) + delete(rawMsg, key) + case "licenseModel": + err = unpopulate(val, "LicenseModel", &a.LicenseModel) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &a.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &a.LifecycleState) + delete(rawMsg, key) + case "localAdgAutoFailoverMaxDataLossLimit": + err = unpopulate(val, "LocalAdgAutoFailoverMaxDataLossLimit", &a.LocalAdgAutoFailoverMaxDataLossLimit) + delete(rawMsg, key) + case "localDisasterRecoveryType": + err = unpopulate(val, "LocalDisasterRecoveryType", &a.LocalDisasterRecoveryType) + delete(rawMsg, key) + case "localStandbyDb": + err = unpopulate(val, "LocalStandbyDb", &a.LocalStandbyDb) + delete(rawMsg, key) + case "longTermBackupSchedule": + err = unpopulate(val, "LongTermBackupSchedule", &a.LongTermBackupSchedule) + delete(rawMsg, key) + case "memoryPerOracleComputeUnitInGbs": + err = unpopulate(val, "MemoryPerOracleComputeUnitInGbs", &a.MemoryPerOracleComputeUnitInGbs) + delete(rawMsg, key) + case "ncharacterSet": + err = unpopulate(val, "NcharacterSet", &a.NcharacterSet) + delete(rawMsg, key) + case "nextLongTermBackupTimeStamp": + err = unpopulateDateTimeRFC3339(val, "NextLongTermBackupTimeStamp", &a.NextLongTermBackupTimeStamp) + delete(rawMsg, key) + case "ociUrl": + err = unpopulate(val, "OciURL", &a.OciURL) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &a.Ocid) + delete(rawMsg, key) + case "openMode": + err = unpopulate(val, "OpenMode", &a.OpenMode) + delete(rawMsg, key) + case "operationsInsightsStatus": + err = unpopulate(val, "OperationsInsightsStatus", &a.OperationsInsightsStatus) + delete(rawMsg, key) + case "peerDbId": + err = unpopulate(val, "PeerDbID", &a.PeerDbID) + delete(rawMsg, key) + case "peerDbIds": + err = unpopulate(val, "PeerDbIDs", &a.PeerDbIDs) + delete(rawMsg, key) + case "permissionLevel": + err = unpopulate(val, "PermissionLevel", &a.PermissionLevel) + delete(rawMsg, key) + case "privateEndpoint": + err = unpopulate(val, "PrivateEndpoint", &a.PrivateEndpoint) + delete(rawMsg, key) + case "privateEndpointIp": + err = unpopulate(val, "PrivateEndpointIP", &a.PrivateEndpointIP) + delete(rawMsg, key) + case "privateEndpointLabel": + err = unpopulate(val, "PrivateEndpointLabel", &a.PrivateEndpointLabel) + delete(rawMsg, key) + case "provisionableCpus": + err = unpopulate(val, "ProvisionableCpus", &a.ProvisionableCpus) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &a.ProvisioningState) + delete(rawMsg, key) + case "remoteDisasterRecoveryConfiguration": + err = unpopulate(val, "RemoteDisasterRecoveryConfiguration", &a.RemoteDisasterRecoveryConfiguration) + delete(rawMsg, key) + case "remoteDisasterRecoveryType": + err = unpopulate(val, "RemoteDisasterRecoveryType", &a.RemoteDisasterRecoveryType) + delete(rawMsg, key) + case "role": + err = unpopulate(val, "Role", &a.Role) + delete(rawMsg, key) + case "sqlWebDeveloperUrl": + err = unpopulate(val, "SQLWebDeveloperURL", &a.SQLWebDeveloperURL) + delete(rawMsg, key) + case "scheduledOperations": + err = unpopulate(val, "ScheduledOperations", &a.ScheduledOperations) + delete(rawMsg, key) + case "serviceConsoleUrl": + err = unpopulate(val, "ServiceConsoleURL", &a.ServiceConsoleURL) + delete(rawMsg, key) + case "source": + err = unpopulate(val, "Source", &a.Source) + delete(rawMsg, key) + case "sourceId": + err = unpopulate(val, "SourceID", &a.SourceID) + delete(rawMsg, key) + case "sourceLocation": + err = unpopulate(val, "SourceLocation", &a.SourceLocation) + delete(rawMsg, key) + case "sourceOcid": + err = unpopulate(val, "SourceOcid", &a.SourceOcid) + delete(rawMsg, key) + case "subnetId": + err = unpopulate(val, "SubnetID", &a.SubnetID) + delete(rawMsg, key) + case "supportedRegionsToCloneTo": + err = unpopulate(val, "SupportedRegionsToCloneTo", &a.SupportedRegionsToCloneTo) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &a.TimeCreated) + delete(rawMsg, key) + case "timeDataGuardRoleChanged": + err = unpopulate(val, "TimeDataGuardRoleChanged", &a.TimeDataGuardRoleChanged) + delete(rawMsg, key) + case "timeDeletionOfFreeAutonomousDatabase": + err = unpopulate(val, "TimeDeletionOfFreeAutonomousDatabase", &a.TimeDeletionOfFreeAutonomousDatabase) + delete(rawMsg, key) + case "timeDisasterRecoveryRoleChanged": + err = unpopulateDateTimeRFC3339(val, "TimeDisasterRecoveryRoleChanged", &a.TimeDisasterRecoveryRoleChanged) + delete(rawMsg, key) + case "timeLocalDataGuardEnabled": + err = unpopulate(val, "TimeLocalDataGuardEnabled", &a.TimeLocalDataGuardEnabled) + delete(rawMsg, key) + case "timeMaintenanceBegin": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceBegin", &a.TimeMaintenanceBegin) + delete(rawMsg, key) + case "timeMaintenanceEnd": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceEnd", &a.TimeMaintenanceEnd) + delete(rawMsg, key) + case "timeOfLastFailover": + err = unpopulate(val, "TimeOfLastFailover", &a.TimeOfLastFailover) + delete(rawMsg, key) + case "timeOfLastRefresh": + err = unpopulate(val, "TimeOfLastRefresh", &a.TimeOfLastRefresh) + delete(rawMsg, key) + case "timeOfLastRefreshPoint": + err = unpopulate(val, "TimeOfLastRefreshPoint", &a.TimeOfLastRefreshPoint) + delete(rawMsg, key) + case "timeOfLastSwitchover": + err = unpopulate(val, "TimeOfLastSwitchover", &a.TimeOfLastSwitchover) + delete(rawMsg, key) + case "timeReclamationOfFreeAutonomousDatabase": + err = unpopulate(val, "TimeReclamationOfFreeAutonomousDatabase", &a.TimeReclamationOfFreeAutonomousDatabase) + delete(rawMsg, key) + case "usedDataStorageSizeInGbs": + err = unpopulate(val, "UsedDataStorageSizeInGbs", &a.UsedDataStorageSizeInGbs) + delete(rawMsg, key) + case "usedDataStorageSizeInTbs": + err = unpopulate(val, "UsedDataStorageSizeInTbs", &a.UsedDataStorageSizeInTbs) + delete(rawMsg, key) + case "vnetId": + err = unpopulate(val, "VnetID", &a.VnetID) + delete(rawMsg, key) + case "whitelistedIps": + err = unpopulate(val, "WhitelistedIPs", &a.WhitelistedIPs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseFromBackupTimestampProperties. +func (a AutonomousDatabaseFromBackupTimestampProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "actualUsedDataStorageSizeInTbs", a.ActualUsedDataStorageSizeInTbs) + populate(objectMap, "adminPassword", a.AdminPassword) + populate(objectMap, "allocatedStorageSizeInTbs", a.AllocatedStorageSizeInTbs) + populate(objectMap, "apexDetails", a.ApexDetails) + populate(objectMap, "autonomousDatabaseId", a.AutonomousDatabaseID) + populate(objectMap, "autonomousMaintenanceScheduleType", a.AutonomousMaintenanceScheduleType) + populate(objectMap, "availableUpgradeVersions", a.AvailableUpgradeVersions) + populate(objectMap, "backupRetentionPeriodInDays", a.BackupRetentionPeriodInDays) + populate(objectMap, "cpuCoreCount", a.CPUCoreCount) + populate(objectMap, "characterSet", a.CharacterSet) + populate(objectMap, "cloneType", a.CloneType) + populate(objectMap, "computeCount", a.ComputeCount) + populate(objectMap, "computeModel", a.ComputeModel) + populate(objectMap, "connectionStrings", a.ConnectionStrings) + populate(objectMap, "connectionUrls", a.ConnectionUrls) + populate(objectMap, "customerContacts", a.CustomerContacts) + objectMap["dataBaseType"] = DataBaseTypeCloneFromBackupTimestamp + populate(objectMap, "dataSafeStatus", a.DataSafeStatus) + populate(objectMap, "dataStorageSizeInGbs", a.DataStorageSizeInGbs) + populate(objectMap, "dataStorageSizeInTbs", a.DataStorageSizeInTbs) + populate(objectMap, "databaseEdition", a.DatabaseEdition) + populate(objectMap, "dbVersion", a.DbVersion) + populate(objectMap, "dbWorkload", a.DbWorkload) + populate(objectMap, "displayName", a.DisplayName) + populate(objectMap, "failedDataRecoveryInSeconds", a.FailedDataRecoveryInSeconds) + populate(objectMap, "inMemoryAreaInGbs", a.InMemoryAreaInGbs) + populate(objectMap, "isAutoScalingEnabled", a.IsAutoScalingEnabled) + populate(objectMap, "isAutoScalingForStorageEnabled", a.IsAutoScalingForStorageEnabled) + populate(objectMap, "isLocalDataGuardEnabled", a.IsLocalDataGuardEnabled) + populate(objectMap, "isMtlsConnectionRequired", a.IsMtlsConnectionRequired) + populate(objectMap, "isPreview", a.IsPreview) + populate(objectMap, "isPreviewVersionWithServiceTermsAccepted", a.IsPreviewVersionWithServiceTermsAccepted) + populate(objectMap, "isRemoteDataGuardEnabled", a.IsRemoteDataGuardEnabled) + populate(objectMap, "licenseModel", a.LicenseModel) + populate(objectMap, "lifecycleDetails", a.LifecycleDetails) + populate(objectMap, "lifecycleState", a.LifecycleState) + populate(objectMap, "localAdgAutoFailoverMaxDataLossLimit", a.LocalAdgAutoFailoverMaxDataLossLimit) + populate(objectMap, "localDisasterRecoveryType", a.LocalDisasterRecoveryType) + populate(objectMap, "localStandbyDb", a.LocalStandbyDb) + populate(objectMap, "longTermBackupSchedule", a.LongTermBackupSchedule) + populate(objectMap, "memoryPerOracleComputeUnitInGbs", a.MemoryPerOracleComputeUnitInGbs) + populate(objectMap, "ncharacterSet", a.NcharacterSet) + populateDateTimeRFC3339(objectMap, "nextLongTermBackupTimeStamp", a.NextLongTermBackupTimeStamp) + populate(objectMap, "ociUrl", a.OciURL) + populate(objectMap, "ocid", a.Ocid) + populate(objectMap, "openMode", a.OpenMode) + populate(objectMap, "operationsInsightsStatus", a.OperationsInsightsStatus) + populate(objectMap, "peerDbId", a.PeerDbID) + populate(objectMap, "peerDbIds", a.PeerDbIDs) + populate(objectMap, "permissionLevel", a.PermissionLevel) + populate(objectMap, "privateEndpoint", a.PrivateEndpoint) + populate(objectMap, "privateEndpointIp", a.PrivateEndpointIP) + populate(objectMap, "privateEndpointLabel", a.PrivateEndpointLabel) + populate(objectMap, "provisionableCpus", a.ProvisionableCpus) + populate(objectMap, "provisioningState", a.ProvisioningState) + populate(objectMap, "remoteDisasterRecoveryConfiguration", a.RemoteDisasterRecoveryConfiguration) + populate(objectMap, "role", a.Role) + populate(objectMap, "sqlWebDeveloperUrl", a.SQLWebDeveloperURL) + populate(objectMap, "scheduledOperations", a.ScheduledOperations) + populate(objectMap, "serviceConsoleUrl", a.ServiceConsoleURL) + objectMap["source"] = SourceTypeBackupFromTimestamp + populate(objectMap, "sourceId", a.SourceID) + populate(objectMap, "subnetId", a.SubnetID) + populate(objectMap, "supportedRegionsToCloneTo", a.SupportedRegionsToCloneTo) + populateDateTimeRFC3339(objectMap, "timeCreated", a.TimeCreated) + populate(objectMap, "timeDataGuardRoleChanged", a.TimeDataGuardRoleChanged) + populate(objectMap, "timeDeletionOfFreeAutonomousDatabase", a.TimeDeletionOfFreeAutonomousDatabase) + populateDateTimeRFC3339(objectMap, "timeDisasterRecoveryRoleChanged", a.TimeDisasterRecoveryRoleChanged) + populate(objectMap, "timeLocalDataGuardEnabled", a.TimeLocalDataGuardEnabled) + populateDateTimeRFC3339(objectMap, "timeMaintenanceBegin", a.TimeMaintenanceBegin) + populateDateTimeRFC3339(objectMap, "timeMaintenanceEnd", a.TimeMaintenanceEnd) + populate(objectMap, "timeOfLastFailover", a.TimeOfLastFailover) + populate(objectMap, "timeOfLastRefresh", a.TimeOfLastRefresh) + populate(objectMap, "timeOfLastRefreshPoint", a.TimeOfLastRefreshPoint) + populate(objectMap, "timeOfLastSwitchover", a.TimeOfLastSwitchover) + populate(objectMap, "timeReclamationOfFreeAutonomousDatabase", a.TimeReclamationOfFreeAutonomousDatabase) + populateDateTimeRFC3339(objectMap, "timestamp", a.Timestamp) + populate(objectMap, "useLatestAvailableBackupTimeStamp", a.UseLatestAvailableBackupTimeStamp) + populate(objectMap, "usedDataStorageSizeInGbs", a.UsedDataStorageSizeInGbs) + populate(objectMap, "usedDataStorageSizeInTbs", a.UsedDataStorageSizeInTbs) + populate(objectMap, "vnetId", a.VnetID) + populate(objectMap, "whitelistedIps", a.WhitelistedIPs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseFromBackupTimestampProperties. +func (a *AutonomousDatabaseFromBackupTimestampProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "actualUsedDataStorageSizeInTbs": + err = unpopulate(val, "ActualUsedDataStorageSizeInTbs", &a.ActualUsedDataStorageSizeInTbs) + delete(rawMsg, key) + case "adminPassword": + err = unpopulate(val, "AdminPassword", &a.AdminPassword) + delete(rawMsg, key) + case "allocatedStorageSizeInTbs": + err = unpopulate(val, "AllocatedStorageSizeInTbs", &a.AllocatedStorageSizeInTbs) + delete(rawMsg, key) + case "apexDetails": + err = unpopulate(val, "ApexDetails", &a.ApexDetails) + delete(rawMsg, key) + case "autonomousDatabaseId": + err = unpopulate(val, "AutonomousDatabaseID", &a.AutonomousDatabaseID) + delete(rawMsg, key) + case "autonomousMaintenanceScheduleType": + err = unpopulate(val, "AutonomousMaintenanceScheduleType", &a.AutonomousMaintenanceScheduleType) + delete(rawMsg, key) + case "availableUpgradeVersions": + err = unpopulate(val, "AvailableUpgradeVersions", &a.AvailableUpgradeVersions) + delete(rawMsg, key) + case "backupRetentionPeriodInDays": + err = unpopulate(val, "BackupRetentionPeriodInDays", &a.BackupRetentionPeriodInDays) + delete(rawMsg, key) + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &a.CPUCoreCount) + delete(rawMsg, key) + case "characterSet": + err = unpopulate(val, "CharacterSet", &a.CharacterSet) + delete(rawMsg, key) + case "cloneType": + err = unpopulate(val, "CloneType", &a.CloneType) + delete(rawMsg, key) + case "computeCount": + err = unpopulate(val, "ComputeCount", &a.ComputeCount) + delete(rawMsg, key) + case "computeModel": + err = unpopulate(val, "ComputeModel", &a.ComputeModel) + delete(rawMsg, key) + case "connectionStrings": + err = unpopulate(val, "ConnectionStrings", &a.ConnectionStrings) + delete(rawMsg, key) + case "connectionUrls": + err = unpopulate(val, "ConnectionUrls", &a.ConnectionUrls) + delete(rawMsg, key) + case "customerContacts": + err = unpopulate(val, "CustomerContacts", &a.CustomerContacts) + delete(rawMsg, key) + case "dataBaseType": + err = unpopulate(val, "DataBaseType", &a.DataBaseType) + delete(rawMsg, key) + case "dataSafeStatus": + err = unpopulate(val, "DataSafeStatus", &a.DataSafeStatus) + delete(rawMsg, key) + case "dataStorageSizeInGbs": + err = unpopulate(val, "DataStorageSizeInGbs", &a.DataStorageSizeInGbs) + delete(rawMsg, key) + case "dataStorageSizeInTbs": + err = unpopulate(val, "DataStorageSizeInTbs", &a.DataStorageSizeInTbs) + delete(rawMsg, key) + case "databaseEdition": + err = unpopulate(val, "DatabaseEdition", &a.DatabaseEdition) + delete(rawMsg, key) + case "dbVersion": + err = unpopulate(val, "DbVersion", &a.DbVersion) + delete(rawMsg, key) + case "dbWorkload": + err = unpopulate(val, "DbWorkload", &a.DbWorkload) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &a.DisplayName) + delete(rawMsg, key) + case "failedDataRecoveryInSeconds": + err = unpopulate(val, "FailedDataRecoveryInSeconds", &a.FailedDataRecoveryInSeconds) + delete(rawMsg, key) + case "inMemoryAreaInGbs": + err = unpopulate(val, "InMemoryAreaInGbs", &a.InMemoryAreaInGbs) + delete(rawMsg, key) + case "isAutoScalingEnabled": + err = unpopulate(val, "IsAutoScalingEnabled", &a.IsAutoScalingEnabled) + delete(rawMsg, key) + case "isAutoScalingForStorageEnabled": + err = unpopulate(val, "IsAutoScalingForStorageEnabled", &a.IsAutoScalingForStorageEnabled) + delete(rawMsg, key) + case "isLocalDataGuardEnabled": + err = unpopulate(val, "IsLocalDataGuardEnabled", &a.IsLocalDataGuardEnabled) + delete(rawMsg, key) + case "isMtlsConnectionRequired": + err = unpopulate(val, "IsMtlsConnectionRequired", &a.IsMtlsConnectionRequired) + delete(rawMsg, key) + case "isPreview": + err = unpopulate(val, "IsPreview", &a.IsPreview) + delete(rawMsg, key) + case "isPreviewVersionWithServiceTermsAccepted": + err = unpopulate(val, "IsPreviewVersionWithServiceTermsAccepted", &a.IsPreviewVersionWithServiceTermsAccepted) + delete(rawMsg, key) + case "isRemoteDataGuardEnabled": + err = unpopulate(val, "IsRemoteDataGuardEnabled", &a.IsRemoteDataGuardEnabled) + delete(rawMsg, key) + case "licenseModel": + err = unpopulate(val, "LicenseModel", &a.LicenseModel) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &a.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &a.LifecycleState) + delete(rawMsg, key) + case "localAdgAutoFailoverMaxDataLossLimit": + err = unpopulate(val, "LocalAdgAutoFailoverMaxDataLossLimit", &a.LocalAdgAutoFailoverMaxDataLossLimit) + delete(rawMsg, key) + case "localDisasterRecoveryType": + err = unpopulate(val, "LocalDisasterRecoveryType", &a.LocalDisasterRecoveryType) + delete(rawMsg, key) + case "localStandbyDb": + err = unpopulate(val, "LocalStandbyDb", &a.LocalStandbyDb) + delete(rawMsg, key) + case "longTermBackupSchedule": + err = unpopulate(val, "LongTermBackupSchedule", &a.LongTermBackupSchedule) + delete(rawMsg, key) + case "memoryPerOracleComputeUnitInGbs": + err = unpopulate(val, "MemoryPerOracleComputeUnitInGbs", &a.MemoryPerOracleComputeUnitInGbs) + delete(rawMsg, key) + case "ncharacterSet": + err = unpopulate(val, "NcharacterSet", &a.NcharacterSet) + delete(rawMsg, key) + case "nextLongTermBackupTimeStamp": + err = unpopulateDateTimeRFC3339(val, "NextLongTermBackupTimeStamp", &a.NextLongTermBackupTimeStamp) + delete(rawMsg, key) + case "ociUrl": + err = unpopulate(val, "OciURL", &a.OciURL) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &a.Ocid) + delete(rawMsg, key) + case "openMode": + err = unpopulate(val, "OpenMode", &a.OpenMode) + delete(rawMsg, key) + case "operationsInsightsStatus": + err = unpopulate(val, "OperationsInsightsStatus", &a.OperationsInsightsStatus) + delete(rawMsg, key) + case "peerDbId": + err = unpopulate(val, "PeerDbID", &a.PeerDbID) + delete(rawMsg, key) + case "peerDbIds": + err = unpopulate(val, "PeerDbIDs", &a.PeerDbIDs) + delete(rawMsg, key) + case "permissionLevel": + err = unpopulate(val, "PermissionLevel", &a.PermissionLevel) + delete(rawMsg, key) + case "privateEndpoint": + err = unpopulate(val, "PrivateEndpoint", &a.PrivateEndpoint) + delete(rawMsg, key) + case "privateEndpointIp": + err = unpopulate(val, "PrivateEndpointIP", &a.PrivateEndpointIP) + delete(rawMsg, key) + case "privateEndpointLabel": + err = unpopulate(val, "PrivateEndpointLabel", &a.PrivateEndpointLabel) + delete(rawMsg, key) + case "provisionableCpus": + err = unpopulate(val, "ProvisionableCpus", &a.ProvisionableCpus) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &a.ProvisioningState) + delete(rawMsg, key) + case "remoteDisasterRecoveryConfiguration": + err = unpopulate(val, "RemoteDisasterRecoveryConfiguration", &a.RemoteDisasterRecoveryConfiguration) + delete(rawMsg, key) + case "role": + err = unpopulate(val, "Role", &a.Role) + delete(rawMsg, key) + case "sqlWebDeveloperUrl": + err = unpopulate(val, "SQLWebDeveloperURL", &a.SQLWebDeveloperURL) + delete(rawMsg, key) + case "scheduledOperations": + err = unpopulate(val, "ScheduledOperations", &a.ScheduledOperations) + delete(rawMsg, key) + case "serviceConsoleUrl": + err = unpopulate(val, "ServiceConsoleURL", &a.ServiceConsoleURL) + delete(rawMsg, key) + case "source": + err = unpopulate(val, "Source", &a.Source) + delete(rawMsg, key) + case "sourceId": + err = unpopulate(val, "SourceID", &a.SourceID) + delete(rawMsg, key) + case "subnetId": + err = unpopulate(val, "SubnetID", &a.SubnetID) + delete(rawMsg, key) + case "supportedRegionsToCloneTo": + err = unpopulate(val, "SupportedRegionsToCloneTo", &a.SupportedRegionsToCloneTo) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &a.TimeCreated) + delete(rawMsg, key) + case "timeDataGuardRoleChanged": + err = unpopulate(val, "TimeDataGuardRoleChanged", &a.TimeDataGuardRoleChanged) + delete(rawMsg, key) + case "timeDeletionOfFreeAutonomousDatabase": + err = unpopulate(val, "TimeDeletionOfFreeAutonomousDatabase", &a.TimeDeletionOfFreeAutonomousDatabase) + delete(rawMsg, key) + case "timeDisasterRecoveryRoleChanged": + err = unpopulateDateTimeRFC3339(val, "TimeDisasterRecoveryRoleChanged", &a.TimeDisasterRecoveryRoleChanged) + delete(rawMsg, key) + case "timeLocalDataGuardEnabled": + err = unpopulate(val, "TimeLocalDataGuardEnabled", &a.TimeLocalDataGuardEnabled) + delete(rawMsg, key) + case "timeMaintenanceBegin": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceBegin", &a.TimeMaintenanceBegin) + delete(rawMsg, key) + case "timeMaintenanceEnd": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceEnd", &a.TimeMaintenanceEnd) + delete(rawMsg, key) + case "timeOfLastFailover": + err = unpopulate(val, "TimeOfLastFailover", &a.TimeOfLastFailover) + delete(rawMsg, key) + case "timeOfLastRefresh": + err = unpopulate(val, "TimeOfLastRefresh", &a.TimeOfLastRefresh) + delete(rawMsg, key) + case "timeOfLastRefreshPoint": + err = unpopulate(val, "TimeOfLastRefreshPoint", &a.TimeOfLastRefreshPoint) + delete(rawMsg, key) + case "timeOfLastSwitchover": + err = unpopulate(val, "TimeOfLastSwitchover", &a.TimeOfLastSwitchover) + delete(rawMsg, key) + case "timeReclamationOfFreeAutonomousDatabase": + err = unpopulate(val, "TimeReclamationOfFreeAutonomousDatabase", &a.TimeReclamationOfFreeAutonomousDatabase) + delete(rawMsg, key) + case "timestamp": + err = unpopulateDateTimeRFC3339(val, "Timestamp", &a.Timestamp) + delete(rawMsg, key) + case "useLatestAvailableBackupTimeStamp": + err = unpopulate(val, "UseLatestAvailableBackupTimeStamp", &a.UseLatestAvailableBackupTimeStamp) + delete(rawMsg, key) + case "usedDataStorageSizeInGbs": + err = unpopulate(val, "UsedDataStorageSizeInGbs", &a.UsedDataStorageSizeInGbs) + delete(rawMsg, key) + case "usedDataStorageSizeInTbs": + err = unpopulate(val, "UsedDataStorageSizeInTbs", &a.UsedDataStorageSizeInTbs) + delete(rawMsg, key) + case "vnetId": + err = unpopulate(val, "VnetID", &a.VnetID) + delete(rawMsg, key) + case "whitelistedIps": + err = unpopulate(val, "WhitelistedIPs", &a.WhitelistedIPs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseListResult. +func (a AutonomousDatabaseListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", a.NextLink) + populate(objectMap, "value", a.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseListResult. +func (a *AutonomousDatabaseListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &a.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &a.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseNationalCharacterSet. +func (a AutonomousDatabaseNationalCharacterSet) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", a.ID) + populate(objectMap, "name", a.Name) + populate(objectMap, "properties", a.Properties) + populate(objectMap, "systemData", a.SystemData) + populate(objectMap, "type", a.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseNationalCharacterSet. +func (a *AutonomousDatabaseNationalCharacterSet) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &a.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &a.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &a.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &a.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &a.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseNationalCharacterSetListResult. +func (a AutonomousDatabaseNationalCharacterSetListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", a.NextLink) + populate(objectMap, "value", a.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseNationalCharacterSetListResult. +func (a *AutonomousDatabaseNationalCharacterSetListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &a.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &a.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseNationalCharacterSetProperties. +func (a AutonomousDatabaseNationalCharacterSetProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "characterSet", a.CharacterSet) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseNationalCharacterSetProperties. +func (a *AutonomousDatabaseNationalCharacterSetProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "characterSet": + err = unpopulate(val, "CharacterSet", &a.CharacterSet) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseProperties. +func (a AutonomousDatabaseProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "actualUsedDataStorageSizeInTbs", a.ActualUsedDataStorageSizeInTbs) + populate(objectMap, "adminPassword", a.AdminPassword) + populate(objectMap, "allocatedStorageSizeInTbs", a.AllocatedStorageSizeInTbs) + populate(objectMap, "apexDetails", a.ApexDetails) + populate(objectMap, "autonomousDatabaseId", a.AutonomousDatabaseID) + populate(objectMap, "autonomousMaintenanceScheduleType", a.AutonomousMaintenanceScheduleType) + populate(objectMap, "availableUpgradeVersions", a.AvailableUpgradeVersions) + populate(objectMap, "backupRetentionPeriodInDays", a.BackupRetentionPeriodInDays) + populate(objectMap, "cpuCoreCount", a.CPUCoreCount) + populate(objectMap, "characterSet", a.CharacterSet) + populate(objectMap, "computeCount", a.ComputeCount) + populate(objectMap, "computeModel", a.ComputeModel) + populate(objectMap, "connectionStrings", a.ConnectionStrings) + populate(objectMap, "connectionUrls", a.ConnectionUrls) + populate(objectMap, "customerContacts", a.CustomerContacts) + objectMap["dataBaseType"] = DataBaseTypeRegular + populate(objectMap, "dataSafeStatus", a.DataSafeStatus) + populate(objectMap, "dataStorageSizeInGbs", a.DataStorageSizeInGbs) + populate(objectMap, "dataStorageSizeInTbs", a.DataStorageSizeInTbs) + populate(objectMap, "databaseEdition", a.DatabaseEdition) + populate(objectMap, "dbVersion", a.DbVersion) + populate(objectMap, "dbWorkload", a.DbWorkload) + populate(objectMap, "displayName", a.DisplayName) + populate(objectMap, "failedDataRecoveryInSeconds", a.FailedDataRecoveryInSeconds) + populate(objectMap, "inMemoryAreaInGbs", a.InMemoryAreaInGbs) + populate(objectMap, "isAutoScalingEnabled", a.IsAutoScalingEnabled) + populate(objectMap, "isAutoScalingForStorageEnabled", a.IsAutoScalingForStorageEnabled) + populate(objectMap, "isLocalDataGuardEnabled", a.IsLocalDataGuardEnabled) + populate(objectMap, "isMtlsConnectionRequired", a.IsMtlsConnectionRequired) + populate(objectMap, "isPreview", a.IsPreview) + populate(objectMap, "isPreviewVersionWithServiceTermsAccepted", a.IsPreviewVersionWithServiceTermsAccepted) + populate(objectMap, "isRemoteDataGuardEnabled", a.IsRemoteDataGuardEnabled) + populate(objectMap, "licenseModel", a.LicenseModel) + populate(objectMap, "lifecycleDetails", a.LifecycleDetails) + populate(objectMap, "lifecycleState", a.LifecycleState) + populate(objectMap, "localAdgAutoFailoverMaxDataLossLimit", a.LocalAdgAutoFailoverMaxDataLossLimit) + populate(objectMap, "localDisasterRecoveryType", a.LocalDisasterRecoveryType) + populate(objectMap, "localStandbyDb", a.LocalStandbyDb) + populate(objectMap, "longTermBackupSchedule", a.LongTermBackupSchedule) + populate(objectMap, "memoryPerOracleComputeUnitInGbs", a.MemoryPerOracleComputeUnitInGbs) + populate(objectMap, "ncharacterSet", a.NcharacterSet) + populateDateTimeRFC3339(objectMap, "nextLongTermBackupTimeStamp", a.NextLongTermBackupTimeStamp) + populate(objectMap, "ociUrl", a.OciURL) + populate(objectMap, "ocid", a.Ocid) + populate(objectMap, "openMode", a.OpenMode) + populate(objectMap, "operationsInsightsStatus", a.OperationsInsightsStatus) + populate(objectMap, "peerDbId", a.PeerDbID) + populate(objectMap, "peerDbIds", a.PeerDbIDs) + populate(objectMap, "permissionLevel", a.PermissionLevel) + populate(objectMap, "privateEndpoint", a.PrivateEndpoint) + populate(objectMap, "privateEndpointIp", a.PrivateEndpointIP) + populate(objectMap, "privateEndpointLabel", a.PrivateEndpointLabel) + populate(objectMap, "provisionableCpus", a.ProvisionableCpus) + populate(objectMap, "provisioningState", a.ProvisioningState) + populate(objectMap, "remoteDisasterRecoveryConfiguration", a.RemoteDisasterRecoveryConfiguration) + populate(objectMap, "role", a.Role) + populate(objectMap, "sqlWebDeveloperUrl", a.SQLWebDeveloperURL) + populate(objectMap, "scheduledOperations", a.ScheduledOperations) + populate(objectMap, "serviceConsoleUrl", a.ServiceConsoleURL) + populate(objectMap, "subnetId", a.SubnetID) + populate(objectMap, "supportedRegionsToCloneTo", a.SupportedRegionsToCloneTo) + populateDateTimeRFC3339(objectMap, "timeCreated", a.TimeCreated) + populate(objectMap, "timeDataGuardRoleChanged", a.TimeDataGuardRoleChanged) + populate(objectMap, "timeDeletionOfFreeAutonomousDatabase", a.TimeDeletionOfFreeAutonomousDatabase) + populateDateTimeRFC3339(objectMap, "timeDisasterRecoveryRoleChanged", a.TimeDisasterRecoveryRoleChanged) + populate(objectMap, "timeLocalDataGuardEnabled", a.TimeLocalDataGuardEnabled) + populateDateTimeRFC3339(objectMap, "timeMaintenanceBegin", a.TimeMaintenanceBegin) + populateDateTimeRFC3339(objectMap, "timeMaintenanceEnd", a.TimeMaintenanceEnd) + populate(objectMap, "timeOfLastFailover", a.TimeOfLastFailover) + populate(objectMap, "timeOfLastRefresh", a.TimeOfLastRefresh) + populate(objectMap, "timeOfLastRefreshPoint", a.TimeOfLastRefreshPoint) + populate(objectMap, "timeOfLastSwitchover", a.TimeOfLastSwitchover) + populate(objectMap, "timeReclamationOfFreeAutonomousDatabase", a.TimeReclamationOfFreeAutonomousDatabase) + populate(objectMap, "usedDataStorageSizeInGbs", a.UsedDataStorageSizeInGbs) + populate(objectMap, "usedDataStorageSizeInTbs", a.UsedDataStorageSizeInTbs) + populate(objectMap, "vnetId", a.VnetID) + populate(objectMap, "whitelistedIps", a.WhitelistedIPs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseProperties. +func (a *AutonomousDatabaseProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "actualUsedDataStorageSizeInTbs": + err = unpopulate(val, "ActualUsedDataStorageSizeInTbs", &a.ActualUsedDataStorageSizeInTbs) + delete(rawMsg, key) + case "adminPassword": + err = unpopulate(val, "AdminPassword", &a.AdminPassword) + delete(rawMsg, key) + case "allocatedStorageSizeInTbs": + err = unpopulate(val, "AllocatedStorageSizeInTbs", &a.AllocatedStorageSizeInTbs) + delete(rawMsg, key) + case "apexDetails": + err = unpopulate(val, "ApexDetails", &a.ApexDetails) + delete(rawMsg, key) + case "autonomousDatabaseId": + err = unpopulate(val, "AutonomousDatabaseID", &a.AutonomousDatabaseID) + delete(rawMsg, key) + case "autonomousMaintenanceScheduleType": + err = unpopulate(val, "AutonomousMaintenanceScheduleType", &a.AutonomousMaintenanceScheduleType) + delete(rawMsg, key) + case "availableUpgradeVersions": + err = unpopulate(val, "AvailableUpgradeVersions", &a.AvailableUpgradeVersions) + delete(rawMsg, key) + case "backupRetentionPeriodInDays": + err = unpopulate(val, "BackupRetentionPeriodInDays", &a.BackupRetentionPeriodInDays) + delete(rawMsg, key) + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &a.CPUCoreCount) + delete(rawMsg, key) + case "characterSet": + err = unpopulate(val, "CharacterSet", &a.CharacterSet) + delete(rawMsg, key) + case "computeCount": + err = unpopulate(val, "ComputeCount", &a.ComputeCount) + delete(rawMsg, key) + case "computeModel": + err = unpopulate(val, "ComputeModel", &a.ComputeModel) + delete(rawMsg, key) + case "connectionStrings": + err = unpopulate(val, "ConnectionStrings", &a.ConnectionStrings) + delete(rawMsg, key) + case "connectionUrls": + err = unpopulate(val, "ConnectionUrls", &a.ConnectionUrls) + delete(rawMsg, key) + case "customerContacts": + err = unpopulate(val, "CustomerContacts", &a.CustomerContacts) + delete(rawMsg, key) + case "dataBaseType": + err = unpopulate(val, "DataBaseType", &a.DataBaseType) + delete(rawMsg, key) + case "dataSafeStatus": + err = unpopulate(val, "DataSafeStatus", &a.DataSafeStatus) + delete(rawMsg, key) + case "dataStorageSizeInGbs": + err = unpopulate(val, "DataStorageSizeInGbs", &a.DataStorageSizeInGbs) + delete(rawMsg, key) + case "dataStorageSizeInTbs": + err = unpopulate(val, "DataStorageSizeInTbs", &a.DataStorageSizeInTbs) + delete(rawMsg, key) + case "databaseEdition": + err = unpopulate(val, "DatabaseEdition", &a.DatabaseEdition) + delete(rawMsg, key) + case "dbVersion": + err = unpopulate(val, "DbVersion", &a.DbVersion) + delete(rawMsg, key) + case "dbWorkload": + err = unpopulate(val, "DbWorkload", &a.DbWorkload) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &a.DisplayName) + delete(rawMsg, key) + case "failedDataRecoveryInSeconds": + err = unpopulate(val, "FailedDataRecoveryInSeconds", &a.FailedDataRecoveryInSeconds) + delete(rawMsg, key) + case "inMemoryAreaInGbs": + err = unpopulate(val, "InMemoryAreaInGbs", &a.InMemoryAreaInGbs) + delete(rawMsg, key) + case "isAutoScalingEnabled": + err = unpopulate(val, "IsAutoScalingEnabled", &a.IsAutoScalingEnabled) + delete(rawMsg, key) + case "isAutoScalingForStorageEnabled": + err = unpopulate(val, "IsAutoScalingForStorageEnabled", &a.IsAutoScalingForStorageEnabled) + delete(rawMsg, key) + case "isLocalDataGuardEnabled": + err = unpopulate(val, "IsLocalDataGuardEnabled", &a.IsLocalDataGuardEnabled) + delete(rawMsg, key) + case "isMtlsConnectionRequired": + err = unpopulate(val, "IsMtlsConnectionRequired", &a.IsMtlsConnectionRequired) + delete(rawMsg, key) + case "isPreview": + err = unpopulate(val, "IsPreview", &a.IsPreview) + delete(rawMsg, key) + case "isPreviewVersionWithServiceTermsAccepted": + err = unpopulate(val, "IsPreviewVersionWithServiceTermsAccepted", &a.IsPreviewVersionWithServiceTermsAccepted) + delete(rawMsg, key) + case "isRemoteDataGuardEnabled": + err = unpopulate(val, "IsRemoteDataGuardEnabled", &a.IsRemoteDataGuardEnabled) + delete(rawMsg, key) + case "licenseModel": + err = unpopulate(val, "LicenseModel", &a.LicenseModel) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &a.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &a.LifecycleState) + delete(rawMsg, key) + case "localAdgAutoFailoverMaxDataLossLimit": + err = unpopulate(val, "LocalAdgAutoFailoverMaxDataLossLimit", &a.LocalAdgAutoFailoverMaxDataLossLimit) + delete(rawMsg, key) + case "localDisasterRecoveryType": + err = unpopulate(val, "LocalDisasterRecoveryType", &a.LocalDisasterRecoveryType) + delete(rawMsg, key) + case "localStandbyDb": + err = unpopulate(val, "LocalStandbyDb", &a.LocalStandbyDb) + delete(rawMsg, key) + case "longTermBackupSchedule": + err = unpopulate(val, "LongTermBackupSchedule", &a.LongTermBackupSchedule) + delete(rawMsg, key) + case "memoryPerOracleComputeUnitInGbs": + err = unpopulate(val, "MemoryPerOracleComputeUnitInGbs", &a.MemoryPerOracleComputeUnitInGbs) + delete(rawMsg, key) + case "ncharacterSet": + err = unpopulate(val, "NcharacterSet", &a.NcharacterSet) + delete(rawMsg, key) + case "nextLongTermBackupTimeStamp": + err = unpopulateDateTimeRFC3339(val, "NextLongTermBackupTimeStamp", &a.NextLongTermBackupTimeStamp) + delete(rawMsg, key) + case "ociUrl": + err = unpopulate(val, "OciURL", &a.OciURL) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &a.Ocid) + delete(rawMsg, key) + case "openMode": + err = unpopulate(val, "OpenMode", &a.OpenMode) + delete(rawMsg, key) + case "operationsInsightsStatus": + err = unpopulate(val, "OperationsInsightsStatus", &a.OperationsInsightsStatus) + delete(rawMsg, key) + case "peerDbId": + err = unpopulate(val, "PeerDbID", &a.PeerDbID) + delete(rawMsg, key) + case "peerDbIds": + err = unpopulate(val, "PeerDbIDs", &a.PeerDbIDs) + delete(rawMsg, key) + case "permissionLevel": + err = unpopulate(val, "PermissionLevel", &a.PermissionLevel) + delete(rawMsg, key) + case "privateEndpoint": + err = unpopulate(val, "PrivateEndpoint", &a.PrivateEndpoint) + delete(rawMsg, key) + case "privateEndpointIp": + err = unpopulate(val, "PrivateEndpointIP", &a.PrivateEndpointIP) + delete(rawMsg, key) + case "privateEndpointLabel": + err = unpopulate(val, "PrivateEndpointLabel", &a.PrivateEndpointLabel) + delete(rawMsg, key) + case "provisionableCpus": + err = unpopulate(val, "ProvisionableCpus", &a.ProvisionableCpus) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &a.ProvisioningState) + delete(rawMsg, key) + case "remoteDisasterRecoveryConfiguration": + err = unpopulate(val, "RemoteDisasterRecoveryConfiguration", &a.RemoteDisasterRecoveryConfiguration) + delete(rawMsg, key) + case "role": + err = unpopulate(val, "Role", &a.Role) + delete(rawMsg, key) + case "sqlWebDeveloperUrl": + err = unpopulate(val, "SQLWebDeveloperURL", &a.SQLWebDeveloperURL) + delete(rawMsg, key) + case "scheduledOperations": + err = unpopulate(val, "ScheduledOperations", &a.ScheduledOperations) + delete(rawMsg, key) + case "serviceConsoleUrl": + err = unpopulate(val, "ServiceConsoleURL", &a.ServiceConsoleURL) + delete(rawMsg, key) + case "subnetId": + err = unpopulate(val, "SubnetID", &a.SubnetID) + delete(rawMsg, key) + case "supportedRegionsToCloneTo": + err = unpopulate(val, "SupportedRegionsToCloneTo", &a.SupportedRegionsToCloneTo) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &a.TimeCreated) + delete(rawMsg, key) + case "timeDataGuardRoleChanged": + err = unpopulate(val, "TimeDataGuardRoleChanged", &a.TimeDataGuardRoleChanged) + delete(rawMsg, key) + case "timeDeletionOfFreeAutonomousDatabase": + err = unpopulate(val, "TimeDeletionOfFreeAutonomousDatabase", &a.TimeDeletionOfFreeAutonomousDatabase) + delete(rawMsg, key) + case "timeDisasterRecoveryRoleChanged": + err = unpopulateDateTimeRFC3339(val, "TimeDisasterRecoveryRoleChanged", &a.TimeDisasterRecoveryRoleChanged) + delete(rawMsg, key) + case "timeLocalDataGuardEnabled": + err = unpopulate(val, "TimeLocalDataGuardEnabled", &a.TimeLocalDataGuardEnabled) + delete(rawMsg, key) + case "timeMaintenanceBegin": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceBegin", &a.TimeMaintenanceBegin) + delete(rawMsg, key) + case "timeMaintenanceEnd": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceEnd", &a.TimeMaintenanceEnd) + delete(rawMsg, key) + case "timeOfLastFailover": + err = unpopulate(val, "TimeOfLastFailover", &a.TimeOfLastFailover) + delete(rawMsg, key) + case "timeOfLastRefresh": + err = unpopulate(val, "TimeOfLastRefresh", &a.TimeOfLastRefresh) + delete(rawMsg, key) + case "timeOfLastRefreshPoint": + err = unpopulate(val, "TimeOfLastRefreshPoint", &a.TimeOfLastRefreshPoint) + delete(rawMsg, key) + case "timeOfLastSwitchover": + err = unpopulate(val, "TimeOfLastSwitchover", &a.TimeOfLastSwitchover) + delete(rawMsg, key) + case "timeReclamationOfFreeAutonomousDatabase": + err = unpopulate(val, "TimeReclamationOfFreeAutonomousDatabase", &a.TimeReclamationOfFreeAutonomousDatabase) + delete(rawMsg, key) + case "usedDataStorageSizeInGbs": + err = unpopulate(val, "UsedDataStorageSizeInGbs", &a.UsedDataStorageSizeInGbs) + delete(rawMsg, key) + case "usedDataStorageSizeInTbs": + err = unpopulate(val, "UsedDataStorageSizeInTbs", &a.UsedDataStorageSizeInTbs) + delete(rawMsg, key) + case "vnetId": + err = unpopulate(val, "VnetID", &a.VnetID) + delete(rawMsg, key) + case "whitelistedIps": + err = unpopulate(val, "WhitelistedIPs", &a.WhitelistedIPs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseStandbySummary. +func (a AutonomousDatabaseStandbySummary) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "lagTimeInSeconds", a.LagTimeInSeconds) + populate(objectMap, "lifecycleDetails", a.LifecycleDetails) + populate(objectMap, "lifecycleState", a.LifecycleState) + populate(objectMap, "timeDataGuardRoleChanged", a.TimeDataGuardRoleChanged) + populate(objectMap, "timeDisasterRecoveryRoleChanged", a.TimeDisasterRecoveryRoleChanged) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseStandbySummary. +func (a *AutonomousDatabaseStandbySummary) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "lagTimeInSeconds": + err = unpopulate(val, "LagTimeInSeconds", &a.LagTimeInSeconds) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &a.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &a.LifecycleState) + delete(rawMsg, key) + case "timeDataGuardRoleChanged": + err = unpopulate(val, "TimeDataGuardRoleChanged", &a.TimeDataGuardRoleChanged) + delete(rawMsg, key) + case "timeDisasterRecoveryRoleChanged": + err = unpopulate(val, "TimeDisasterRecoveryRoleChanged", &a.TimeDisasterRecoveryRoleChanged) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseUpdate. +func (a AutonomousDatabaseUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "properties", a.Properties) + populate(objectMap, "tags", a.Tags) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseUpdate. +func (a *AutonomousDatabaseUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "properties": + err = unpopulate(val, "Properties", &a.Properties) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &a.Tags) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseUpdateProperties. +func (a AutonomousDatabaseUpdateProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "adminPassword", a.AdminPassword) + populate(objectMap, "autonomousMaintenanceScheduleType", a.AutonomousMaintenanceScheduleType) + populate(objectMap, "backupRetentionPeriodInDays", a.BackupRetentionPeriodInDays) + populate(objectMap, "cpuCoreCount", a.CPUCoreCount) + populate(objectMap, "computeCount", a.ComputeCount) + populate(objectMap, "customerContacts", a.CustomerContacts) + populate(objectMap, "dataStorageSizeInGbs", a.DataStorageSizeInGbs) + populate(objectMap, "dataStorageSizeInTbs", a.DataStorageSizeInTbs) + populate(objectMap, "databaseEdition", a.DatabaseEdition) + populate(objectMap, "displayName", a.DisplayName) + populate(objectMap, "isAutoScalingEnabled", a.IsAutoScalingEnabled) + populate(objectMap, "isAutoScalingForStorageEnabled", a.IsAutoScalingForStorageEnabled) + populate(objectMap, "isLocalDataGuardEnabled", a.IsLocalDataGuardEnabled) + populate(objectMap, "isMtlsConnectionRequired", a.IsMtlsConnectionRequired) + populate(objectMap, "licenseModel", a.LicenseModel) + populate(objectMap, "localAdgAutoFailoverMaxDataLossLimit", a.LocalAdgAutoFailoverMaxDataLossLimit) + populate(objectMap, "longTermBackupSchedule", a.LongTermBackupSchedule) + populate(objectMap, "openMode", a.OpenMode) + populate(objectMap, "peerDbId", a.PeerDbID) + populate(objectMap, "permissionLevel", a.PermissionLevel) + populate(objectMap, "role", a.Role) + populate(objectMap, "scheduledOperations", a.ScheduledOperations) + populate(objectMap, "whitelistedIps", a.WhitelistedIPs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseUpdateProperties. +func (a *AutonomousDatabaseUpdateProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "adminPassword": + err = unpopulate(val, "AdminPassword", &a.AdminPassword) + delete(rawMsg, key) + case "autonomousMaintenanceScheduleType": + err = unpopulate(val, "AutonomousMaintenanceScheduleType", &a.AutonomousMaintenanceScheduleType) + delete(rawMsg, key) + case "backupRetentionPeriodInDays": + err = unpopulate(val, "BackupRetentionPeriodInDays", &a.BackupRetentionPeriodInDays) + delete(rawMsg, key) + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &a.CPUCoreCount) + delete(rawMsg, key) + case "computeCount": + err = unpopulate(val, "ComputeCount", &a.ComputeCount) + delete(rawMsg, key) + case "customerContacts": + err = unpopulate(val, "CustomerContacts", &a.CustomerContacts) + delete(rawMsg, key) + case "dataStorageSizeInGbs": + err = unpopulate(val, "DataStorageSizeInGbs", &a.DataStorageSizeInGbs) + delete(rawMsg, key) + case "dataStorageSizeInTbs": + err = unpopulate(val, "DataStorageSizeInTbs", &a.DataStorageSizeInTbs) + delete(rawMsg, key) + case "databaseEdition": + err = unpopulate(val, "DatabaseEdition", &a.DatabaseEdition) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &a.DisplayName) + delete(rawMsg, key) + case "isAutoScalingEnabled": + err = unpopulate(val, "IsAutoScalingEnabled", &a.IsAutoScalingEnabled) + delete(rawMsg, key) + case "isAutoScalingForStorageEnabled": + err = unpopulate(val, "IsAutoScalingForStorageEnabled", &a.IsAutoScalingForStorageEnabled) + delete(rawMsg, key) + case "isLocalDataGuardEnabled": + err = unpopulate(val, "IsLocalDataGuardEnabled", &a.IsLocalDataGuardEnabled) + delete(rawMsg, key) + case "isMtlsConnectionRequired": + err = unpopulate(val, "IsMtlsConnectionRequired", &a.IsMtlsConnectionRequired) + delete(rawMsg, key) + case "licenseModel": + err = unpopulate(val, "LicenseModel", &a.LicenseModel) + delete(rawMsg, key) + case "localAdgAutoFailoverMaxDataLossLimit": + err = unpopulate(val, "LocalAdgAutoFailoverMaxDataLossLimit", &a.LocalAdgAutoFailoverMaxDataLossLimit) + delete(rawMsg, key) + case "longTermBackupSchedule": + err = unpopulate(val, "LongTermBackupSchedule", &a.LongTermBackupSchedule) + delete(rawMsg, key) + case "openMode": + err = unpopulate(val, "OpenMode", &a.OpenMode) + delete(rawMsg, key) + case "peerDbId": + err = unpopulate(val, "PeerDbID", &a.PeerDbID) + delete(rawMsg, key) + case "permissionLevel": + err = unpopulate(val, "PermissionLevel", &a.PermissionLevel) + delete(rawMsg, key) + case "role": + err = unpopulate(val, "Role", &a.Role) + delete(rawMsg, key) + case "scheduledOperations": + err = unpopulate(val, "ScheduledOperations", &a.ScheduledOperations) + delete(rawMsg, key) + case "whitelistedIps": + err = unpopulate(val, "WhitelistedIPs", &a.WhitelistedIPs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDatabaseWalletFile. +func (a AutonomousDatabaseWalletFile) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "walletFiles", a.WalletFiles) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDatabaseWalletFile. +func (a *AutonomousDatabaseWalletFile) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "walletFiles": + err = unpopulate(val, "WalletFiles", &a.WalletFiles) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDbVersion. +func (a AutonomousDbVersion) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", a.ID) + populate(objectMap, "name", a.Name) + populate(objectMap, "properties", a.Properties) + populate(objectMap, "systemData", a.SystemData) + populate(objectMap, "type", a.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDbVersion. +func (a *AutonomousDbVersion) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &a.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &a.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &a.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &a.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &a.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDbVersionListResult. +func (a AutonomousDbVersionListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", a.NextLink) + populate(objectMap, "value", a.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDbVersionListResult. +func (a *AutonomousDbVersionListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &a.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &a.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AutonomousDbVersionProperties. +func (a AutonomousDbVersionProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "dbWorkload", a.DbWorkload) + populate(objectMap, "isDefaultForFree", a.IsDefaultForFree) + populate(objectMap, "isDefaultForPaid", a.IsDefaultForPaid) + populate(objectMap, "isFreeTierEnabled", a.IsFreeTierEnabled) + populate(objectMap, "isPaidEnabled", a.IsPaidEnabled) + populate(objectMap, "version", a.Version) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AutonomousDbVersionProperties. +func (a *AutonomousDbVersionProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "dbWorkload": + err = unpopulate(val, "DbWorkload", &a.DbWorkload) + delete(rawMsg, key) + case "isDefaultForFree": + err = unpopulate(val, "IsDefaultForFree", &a.IsDefaultForFree) + delete(rawMsg, key) + case "isDefaultForPaid": + err = unpopulate(val, "IsDefaultForPaid", &a.IsDefaultForPaid) + delete(rawMsg, key) + case "isFreeTierEnabled": + err = unpopulate(val, "IsFreeTierEnabled", &a.IsFreeTierEnabled) + delete(rawMsg, key) + case "isPaidEnabled": + err = unpopulate(val, "IsPaidEnabled", &a.IsPaidEnabled) + delete(rawMsg, key) + case "version": + err = unpopulate(val, "Version", &a.Version) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type AzureSubscriptions. +func (a AzureSubscriptions) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "azureSubscriptionIds", a.AzureSubscriptionIDs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AzureSubscriptions. +func (a *AzureSubscriptions) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "azureSubscriptionIds": + err = unpopulate(val, "AzureSubscriptionIDs", &a.AzureSubscriptionIDs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudAccountDetails. +func (c CloudAccountDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "cloudAccountHomeRegion", c.CloudAccountHomeRegion) + populate(objectMap, "cloudAccountName", c.CloudAccountName) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudAccountDetails. +func (c *CloudAccountDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "cloudAccountHomeRegion": + err = unpopulate(val, "CloudAccountHomeRegion", &c.CloudAccountHomeRegion) + delete(rawMsg, key) + case "cloudAccountName": + err = unpopulate(val, "CloudAccountName", &c.CloudAccountName) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudExadataInfrastructure. +func (c CloudExadataInfrastructure) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", c.ID) + populate(objectMap, "location", c.Location) + populate(objectMap, "name", c.Name) + populate(objectMap, "properties", c.Properties) + populate(objectMap, "systemData", c.SystemData) + populate(objectMap, "tags", c.Tags) + populate(objectMap, "type", c.Type) + populate(objectMap, "zones", c.Zones) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudExadataInfrastructure. +func (c *CloudExadataInfrastructure) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &c.ID) + delete(rawMsg, key) + case "location": + err = unpopulate(val, "Location", &c.Location) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &c.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &c.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &c.SystemData) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &c.Tags) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &c.Type) + delete(rawMsg, key) + case "zones": + err = unpopulate(val, "Zones", &c.Zones) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudExadataInfrastructureListResult. +func (c CloudExadataInfrastructureListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", c.NextLink) + populate(objectMap, "value", c.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudExadataInfrastructureListResult. +func (c *CloudExadataInfrastructureListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &c.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &c.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudExadataInfrastructureProperties. +func (c CloudExadataInfrastructureProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "activatedStorageCount", c.ActivatedStorageCount) + populate(objectMap, "additionalStorageCount", c.AdditionalStorageCount) + populate(objectMap, "availableStorageSizeInGbs", c.AvailableStorageSizeInGbs) + populate(objectMap, "cpuCount", c.CPUCount) + populate(objectMap, "computeCount", c.ComputeCount) + populate(objectMap, "computeModel", c.ComputeModel) + populate(objectMap, "customerContacts", c.CustomerContacts) + populate(objectMap, "dataStorageSizeInTbs", c.DataStorageSizeInTbs) + populate(objectMap, "databaseServerType", c.DatabaseServerType) + populate(objectMap, "dbNodeStorageSizeInGbs", c.DbNodeStorageSizeInGbs) + populate(objectMap, "dbServerVersion", c.DbServerVersion) + populate(objectMap, "definedFileSystemConfiguration", c.DefinedFileSystemConfiguration) + populate(objectMap, "displayName", c.DisplayName) + populate(objectMap, "estimatedPatchingTime", c.EstimatedPatchingTime) + populate(objectMap, "lastMaintenanceRunId", c.LastMaintenanceRunID) + populate(objectMap, "lifecycleDetails", c.LifecycleDetails) + populate(objectMap, "lifecycleState", c.LifecycleState) + populate(objectMap, "maintenanceWindow", c.MaintenanceWindow) + populate(objectMap, "maxCpuCount", c.MaxCPUCount) + populate(objectMap, "maxDataStorageInTbs", c.MaxDataStorageInTbs) + populate(objectMap, "maxDbNodeStorageSizeInGbs", c.MaxDbNodeStorageSizeInGbs) + populate(objectMap, "maxMemoryInGbs", c.MaxMemoryInGbs) + populate(objectMap, "memorySizeInGbs", c.MemorySizeInGbs) + populate(objectMap, "monthlyDbServerVersion", c.MonthlyDbServerVersion) + populate(objectMap, "monthlyStorageServerVersion", c.MonthlyStorageServerVersion) + populate(objectMap, "nextMaintenanceRunId", c.NextMaintenanceRunID) + populate(objectMap, "ociUrl", c.OciURL) + populate(objectMap, "ocid", c.Ocid) + populate(objectMap, "provisioningState", c.ProvisioningState) + populate(objectMap, "shape", c.Shape) + populate(objectMap, "storageCount", c.StorageCount) + populate(objectMap, "storageServerType", c.StorageServerType) + populate(objectMap, "storageServerVersion", c.StorageServerVersion) + populate(objectMap, "timeCreated", c.TimeCreated) + populate(objectMap, "totalStorageSizeInGbs", c.TotalStorageSizeInGbs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudExadataInfrastructureProperties. +func (c *CloudExadataInfrastructureProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "activatedStorageCount": + err = unpopulate(val, "ActivatedStorageCount", &c.ActivatedStorageCount) + delete(rawMsg, key) + case "additionalStorageCount": + err = unpopulate(val, "AdditionalStorageCount", &c.AdditionalStorageCount) + delete(rawMsg, key) + case "availableStorageSizeInGbs": + err = unpopulate(val, "AvailableStorageSizeInGbs", &c.AvailableStorageSizeInGbs) + delete(rawMsg, key) + case "cpuCount": + err = unpopulate(val, "CPUCount", &c.CPUCount) + delete(rawMsg, key) + case "computeCount": + err = unpopulate(val, "ComputeCount", &c.ComputeCount) + delete(rawMsg, key) + case "computeModel": + err = unpopulate(val, "ComputeModel", &c.ComputeModel) + delete(rawMsg, key) + case "customerContacts": + err = unpopulate(val, "CustomerContacts", &c.CustomerContacts) + delete(rawMsg, key) + case "dataStorageSizeInTbs": + err = unpopulate(val, "DataStorageSizeInTbs", &c.DataStorageSizeInTbs) + delete(rawMsg, key) + case "databaseServerType": + err = unpopulate(val, "DatabaseServerType", &c.DatabaseServerType) + delete(rawMsg, key) + case "dbNodeStorageSizeInGbs": + err = unpopulate(val, "DbNodeStorageSizeInGbs", &c.DbNodeStorageSizeInGbs) + delete(rawMsg, key) + case "dbServerVersion": + err = unpopulate(val, "DbServerVersion", &c.DbServerVersion) + delete(rawMsg, key) + case "definedFileSystemConfiguration": + err = unpopulate(val, "DefinedFileSystemConfiguration", &c.DefinedFileSystemConfiguration) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &c.DisplayName) + delete(rawMsg, key) + case "estimatedPatchingTime": + err = unpopulate(val, "EstimatedPatchingTime", &c.EstimatedPatchingTime) + delete(rawMsg, key) + case "lastMaintenanceRunId": + err = unpopulate(val, "LastMaintenanceRunID", &c.LastMaintenanceRunID) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &c.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &c.LifecycleState) + delete(rawMsg, key) + case "maintenanceWindow": + err = unpopulate(val, "MaintenanceWindow", &c.MaintenanceWindow) + delete(rawMsg, key) + case "maxCpuCount": + err = unpopulate(val, "MaxCPUCount", &c.MaxCPUCount) + delete(rawMsg, key) + case "maxDataStorageInTbs": + err = unpopulate(val, "MaxDataStorageInTbs", &c.MaxDataStorageInTbs) + delete(rawMsg, key) + case "maxDbNodeStorageSizeInGbs": + err = unpopulate(val, "MaxDbNodeStorageSizeInGbs", &c.MaxDbNodeStorageSizeInGbs) + delete(rawMsg, key) + case "maxMemoryInGbs": + err = unpopulate(val, "MaxMemoryInGbs", &c.MaxMemoryInGbs) + delete(rawMsg, key) + case "memorySizeInGbs": + err = unpopulate(val, "MemorySizeInGbs", &c.MemorySizeInGbs) + delete(rawMsg, key) + case "monthlyDbServerVersion": + err = unpopulate(val, "MonthlyDbServerVersion", &c.MonthlyDbServerVersion) + delete(rawMsg, key) + case "monthlyStorageServerVersion": + err = unpopulate(val, "MonthlyStorageServerVersion", &c.MonthlyStorageServerVersion) + delete(rawMsg, key) + case "nextMaintenanceRunId": + err = unpopulate(val, "NextMaintenanceRunID", &c.NextMaintenanceRunID) + delete(rawMsg, key) + case "ociUrl": + err = unpopulate(val, "OciURL", &c.OciURL) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &c.Ocid) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &c.ProvisioningState) + delete(rawMsg, key) + case "shape": + err = unpopulate(val, "Shape", &c.Shape) + delete(rawMsg, key) + case "storageCount": + err = unpopulate(val, "StorageCount", &c.StorageCount) + delete(rawMsg, key) + case "storageServerType": + err = unpopulate(val, "StorageServerType", &c.StorageServerType) + delete(rawMsg, key) + case "storageServerVersion": + err = unpopulate(val, "StorageServerVersion", &c.StorageServerVersion) + delete(rawMsg, key) + case "timeCreated": + err = unpopulate(val, "TimeCreated", &c.TimeCreated) + delete(rawMsg, key) + case "totalStorageSizeInGbs": + err = unpopulate(val, "TotalStorageSizeInGbs", &c.TotalStorageSizeInGbs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudExadataInfrastructureUpdate. +func (c CloudExadataInfrastructureUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "properties", c.Properties) + populate(objectMap, "tags", c.Tags) + populate(objectMap, "zones", c.Zones) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudExadataInfrastructureUpdate. +func (c *CloudExadataInfrastructureUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "properties": + err = unpopulate(val, "Properties", &c.Properties) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &c.Tags) + delete(rawMsg, key) + case "zones": + err = unpopulate(val, "Zones", &c.Zones) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudExadataInfrastructureUpdateProperties. +func (c CloudExadataInfrastructureUpdateProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "computeCount", c.ComputeCount) + populate(objectMap, "customerContacts", c.CustomerContacts) + populate(objectMap, "displayName", c.DisplayName) + populate(objectMap, "maintenanceWindow", c.MaintenanceWindow) + populate(objectMap, "storageCount", c.StorageCount) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudExadataInfrastructureUpdateProperties. +func (c *CloudExadataInfrastructureUpdateProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "computeCount": + err = unpopulate(val, "ComputeCount", &c.ComputeCount) + delete(rawMsg, key) + case "customerContacts": + err = unpopulate(val, "CustomerContacts", &c.CustomerContacts) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &c.DisplayName) + delete(rawMsg, key) + case "maintenanceWindow": + err = unpopulate(val, "MaintenanceWindow", &c.MaintenanceWindow) + delete(rawMsg, key) + case "storageCount": + err = unpopulate(val, "StorageCount", &c.StorageCount) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudVMCluster. +func (c CloudVMCluster) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", c.ID) + populate(objectMap, "location", c.Location) + populate(objectMap, "name", c.Name) + populate(objectMap, "properties", c.Properties) + populate(objectMap, "systemData", c.SystemData) + populate(objectMap, "tags", c.Tags) + populate(objectMap, "type", c.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudVMCluster. +func (c *CloudVMCluster) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &c.ID) + delete(rawMsg, key) + case "location": + err = unpopulate(val, "Location", &c.Location) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &c.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &c.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &c.SystemData) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &c.Tags) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &c.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudVMClusterListResult. +func (c CloudVMClusterListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", c.NextLink) + populate(objectMap, "value", c.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudVMClusterListResult. +func (c *CloudVMClusterListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &c.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &c.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudVMClusterProperties. +func (c CloudVMClusterProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "backupSubnetCidr", c.BackupSubnetCidr) + populate(objectMap, "cpuCoreCount", c.CPUCoreCount) + populate(objectMap, "cloudExadataInfrastructureId", c.CloudExadataInfrastructureID) + populate(objectMap, "clusterName", c.ClusterName) + populate(objectMap, "compartmentId", c.CompartmentID) + populate(objectMap, "computeModel", c.ComputeModel) + populate(objectMap, "computeNodes", c.ComputeNodes) + populate(objectMap, "dataCollectionOptions", c.DataCollectionOptions) + populate(objectMap, "dataStoragePercentage", c.DataStoragePercentage) + populate(objectMap, "dataStorageSizeInTbs", c.DataStorageSizeInTbs) + populate(objectMap, "dbNodeStorageSizeInGbs", c.DbNodeStorageSizeInGbs) + populate(objectMap, "dbServers", c.DbServers) + populate(objectMap, "diskRedundancy", c.DiskRedundancy) + populate(objectMap, "displayName", c.DisplayName) + populate(objectMap, "domain", c.Domain) + populate(objectMap, "fileSystemConfigurationDetails", c.FileSystemConfigurationDetails) + populate(objectMap, "giVersion", c.GiVersion) + populate(objectMap, "hostname", c.Hostname) + populate(objectMap, "iormConfigCache", c.IormConfigCache) + populate(objectMap, "isLocalBackupEnabled", c.IsLocalBackupEnabled) + populate(objectMap, "isSparseDiskgroupEnabled", c.IsSparseDiskgroupEnabled) + populate(objectMap, "lastUpdateHistoryEntryId", c.LastUpdateHistoryEntryID) + populate(objectMap, "licenseModel", c.LicenseModel) + populate(objectMap, "lifecycleDetails", c.LifecycleDetails) + populate(objectMap, "lifecycleState", c.LifecycleState) + populate(objectMap, "listenerPort", c.ListenerPort) + populate(objectMap, "memorySizeInGbs", c.MemorySizeInGbs) + populate(objectMap, "nodeCount", c.NodeCount) + populate(objectMap, "nsgCidrs", c.NsgCidrs) + populate(objectMap, "nsgUrl", c.NsgURL) + populate(objectMap, "ociUrl", c.OciURL) + populate(objectMap, "ocid", c.Ocid) + populate(objectMap, "ocpuCount", c.OcpuCount) + populate(objectMap, "provisioningState", c.ProvisioningState) + populate(objectMap, "sshPublicKeys", c.SSHPublicKeys) + populate(objectMap, "scanDnsName", c.ScanDNSName) + populate(objectMap, "scanDnsRecordId", c.ScanDNSRecordID) + populate(objectMap, "scanIpIds", c.ScanIPIDs) + populate(objectMap, "scanListenerPortTcp", c.ScanListenerPortTCP) + populate(objectMap, "scanListenerPortTcpSsl", c.ScanListenerPortTCPSSL) + populate(objectMap, "shape", c.Shape) + populate(objectMap, "storageSizeInGbs", c.StorageSizeInGbs) + populate(objectMap, "subnetId", c.SubnetID) + populate(objectMap, "subnetOcid", c.SubnetOcid) + populate(objectMap, "systemVersion", c.SystemVersion) + populateDateTimeRFC3339(objectMap, "timeCreated", c.TimeCreated) + populate(objectMap, "timeZone", c.TimeZone) + populate(objectMap, "vipIds", c.VipIDs) + populate(objectMap, "vnetId", c.VnetID) + populate(objectMap, "zoneId", c.ZoneID) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudVMClusterProperties. +func (c *CloudVMClusterProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "backupSubnetCidr": + err = unpopulate(val, "BackupSubnetCidr", &c.BackupSubnetCidr) + delete(rawMsg, key) + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &c.CPUCoreCount) + delete(rawMsg, key) + case "cloudExadataInfrastructureId": + err = unpopulate(val, "CloudExadataInfrastructureID", &c.CloudExadataInfrastructureID) + delete(rawMsg, key) + case "clusterName": + err = unpopulate(val, "ClusterName", &c.ClusterName) + delete(rawMsg, key) + case "compartmentId": + err = unpopulate(val, "CompartmentID", &c.CompartmentID) + delete(rawMsg, key) + case "computeModel": + err = unpopulate(val, "ComputeModel", &c.ComputeModel) + delete(rawMsg, key) + case "computeNodes": + err = unpopulate(val, "ComputeNodes", &c.ComputeNodes) + delete(rawMsg, key) + case "dataCollectionOptions": + err = unpopulate(val, "DataCollectionOptions", &c.DataCollectionOptions) + delete(rawMsg, key) + case "dataStoragePercentage": + err = unpopulate(val, "DataStoragePercentage", &c.DataStoragePercentage) + delete(rawMsg, key) + case "dataStorageSizeInTbs": + err = unpopulate(val, "DataStorageSizeInTbs", &c.DataStorageSizeInTbs) + delete(rawMsg, key) + case "dbNodeStorageSizeInGbs": + err = unpopulate(val, "DbNodeStorageSizeInGbs", &c.DbNodeStorageSizeInGbs) + delete(rawMsg, key) + case "dbServers": + err = unpopulate(val, "DbServers", &c.DbServers) + delete(rawMsg, key) + case "diskRedundancy": + err = unpopulate(val, "DiskRedundancy", &c.DiskRedundancy) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &c.DisplayName) + delete(rawMsg, key) + case "domain": + err = unpopulate(val, "Domain", &c.Domain) + delete(rawMsg, key) + case "fileSystemConfigurationDetails": + err = unpopulate(val, "FileSystemConfigurationDetails", &c.FileSystemConfigurationDetails) + delete(rawMsg, key) + case "giVersion": + err = unpopulate(val, "GiVersion", &c.GiVersion) + delete(rawMsg, key) + case "hostname": + err = unpopulate(val, "Hostname", &c.Hostname) + delete(rawMsg, key) + case "iormConfigCache": + err = unpopulate(val, "IormConfigCache", &c.IormConfigCache) + delete(rawMsg, key) + case "isLocalBackupEnabled": + err = unpopulate(val, "IsLocalBackupEnabled", &c.IsLocalBackupEnabled) + delete(rawMsg, key) + case "isSparseDiskgroupEnabled": + err = unpopulate(val, "IsSparseDiskgroupEnabled", &c.IsSparseDiskgroupEnabled) + delete(rawMsg, key) + case "lastUpdateHistoryEntryId": + err = unpopulate(val, "LastUpdateHistoryEntryID", &c.LastUpdateHistoryEntryID) + delete(rawMsg, key) + case "licenseModel": + err = unpopulate(val, "LicenseModel", &c.LicenseModel) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &c.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &c.LifecycleState) + delete(rawMsg, key) + case "listenerPort": + err = unpopulate(val, "ListenerPort", &c.ListenerPort) + delete(rawMsg, key) + case "memorySizeInGbs": + err = unpopulate(val, "MemorySizeInGbs", &c.MemorySizeInGbs) + delete(rawMsg, key) + case "nodeCount": + err = unpopulate(val, "NodeCount", &c.NodeCount) + delete(rawMsg, key) + case "nsgCidrs": + err = unpopulate(val, "NsgCidrs", &c.NsgCidrs) + delete(rawMsg, key) + case "nsgUrl": + err = unpopulate(val, "NsgURL", &c.NsgURL) + delete(rawMsg, key) + case "ociUrl": + err = unpopulate(val, "OciURL", &c.OciURL) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &c.Ocid) + delete(rawMsg, key) + case "ocpuCount": + err = unpopulate(val, "OcpuCount", &c.OcpuCount) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &c.ProvisioningState) + delete(rawMsg, key) + case "sshPublicKeys": + err = unpopulate(val, "SSHPublicKeys", &c.SSHPublicKeys) + delete(rawMsg, key) + case "scanDnsName": + err = unpopulate(val, "ScanDNSName", &c.ScanDNSName) + delete(rawMsg, key) + case "scanDnsRecordId": + err = unpopulate(val, "ScanDNSRecordID", &c.ScanDNSRecordID) + delete(rawMsg, key) + case "scanIpIds": + err = unpopulate(val, "ScanIPIDs", &c.ScanIPIDs) + delete(rawMsg, key) + case "scanListenerPortTcp": + err = unpopulate(val, "ScanListenerPortTCP", &c.ScanListenerPortTCP) + delete(rawMsg, key) + case "scanListenerPortTcpSsl": + err = unpopulate(val, "ScanListenerPortTCPSSL", &c.ScanListenerPortTCPSSL) + delete(rawMsg, key) + case "shape": + err = unpopulate(val, "Shape", &c.Shape) + delete(rawMsg, key) + case "storageSizeInGbs": + err = unpopulate(val, "StorageSizeInGbs", &c.StorageSizeInGbs) + delete(rawMsg, key) + case "subnetId": + err = unpopulate(val, "SubnetID", &c.SubnetID) + delete(rawMsg, key) + case "subnetOcid": + err = unpopulate(val, "SubnetOcid", &c.SubnetOcid) + delete(rawMsg, key) + case "systemVersion": + err = unpopulate(val, "SystemVersion", &c.SystemVersion) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &c.TimeCreated) + delete(rawMsg, key) + case "timeZone": + err = unpopulate(val, "TimeZone", &c.TimeZone) + delete(rawMsg, key) + case "vipIds": + err = unpopulate(val, "VipIDs", &c.VipIDs) + delete(rawMsg, key) + case "vnetId": + err = unpopulate(val, "VnetID", &c.VnetID) + delete(rawMsg, key) + case "zoneId": + err = unpopulate(val, "ZoneID", &c.ZoneID) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudVMClusterUpdate. +func (c CloudVMClusterUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "properties", c.Properties) + populate(objectMap, "tags", c.Tags) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudVMClusterUpdate. +func (c *CloudVMClusterUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "properties": + err = unpopulate(val, "Properties", &c.Properties) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &c.Tags) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CloudVMClusterUpdateProperties. +func (c CloudVMClusterUpdateProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "cpuCoreCount", c.CPUCoreCount) + populate(objectMap, "computeNodes", c.ComputeNodes) + populate(objectMap, "dataCollectionOptions", c.DataCollectionOptions) + populate(objectMap, "dataStorageSizeInTbs", c.DataStorageSizeInTbs) + populate(objectMap, "dbNodeStorageSizeInGbs", c.DbNodeStorageSizeInGbs) + populate(objectMap, "displayName", c.DisplayName) + populate(objectMap, "fileSystemConfigurationDetails", c.FileSystemConfigurationDetails) + populate(objectMap, "licenseModel", c.LicenseModel) + populate(objectMap, "memorySizeInGbs", c.MemorySizeInGbs) + populate(objectMap, "ocpuCount", c.OcpuCount) + populate(objectMap, "sshPublicKeys", c.SSHPublicKeys) + populate(objectMap, "storageSizeInGbs", c.StorageSizeInGbs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CloudVMClusterUpdateProperties. +func (c *CloudVMClusterUpdateProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &c.CPUCoreCount) + delete(rawMsg, key) + case "computeNodes": + err = unpopulate(val, "ComputeNodes", &c.ComputeNodes) + delete(rawMsg, key) + case "dataCollectionOptions": + err = unpopulate(val, "DataCollectionOptions", &c.DataCollectionOptions) + delete(rawMsg, key) + case "dataStorageSizeInTbs": + err = unpopulate(val, "DataStorageSizeInTbs", &c.DataStorageSizeInTbs) + delete(rawMsg, key) + case "dbNodeStorageSizeInGbs": + err = unpopulate(val, "DbNodeStorageSizeInGbs", &c.DbNodeStorageSizeInGbs) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &c.DisplayName) + delete(rawMsg, key) + case "fileSystemConfigurationDetails": + err = unpopulate(val, "FileSystemConfigurationDetails", &c.FileSystemConfigurationDetails) + delete(rawMsg, key) + case "licenseModel": + err = unpopulate(val, "LicenseModel", &c.LicenseModel) + delete(rawMsg, key) + case "memorySizeInGbs": + err = unpopulate(val, "MemorySizeInGbs", &c.MemorySizeInGbs) + delete(rawMsg, key) + case "ocpuCount": + err = unpopulate(val, "OcpuCount", &c.OcpuCount) + delete(rawMsg, key) + case "sshPublicKeys": + err = unpopulate(val, "SSHPublicKeys", &c.SSHPublicKeys) + delete(rawMsg, key) + case "storageSizeInGbs": + err = unpopulate(val, "StorageSizeInGbs", &c.StorageSizeInGbs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ConnectionStringType. +func (c ConnectionStringType) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "allConnectionStrings", c.AllConnectionStrings) + populate(objectMap, "dedicated", c.Dedicated) + populate(objectMap, "high", c.High) + populate(objectMap, "low", c.Low) + populate(objectMap, "medium", c.Medium) + populate(objectMap, "profiles", c.Profiles) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ConnectionStringType. +func (c *ConnectionStringType) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "allConnectionStrings": + err = unpopulate(val, "AllConnectionStrings", &c.AllConnectionStrings) + delete(rawMsg, key) + case "dedicated": + err = unpopulate(val, "Dedicated", &c.Dedicated) + delete(rawMsg, key) + case "high": + err = unpopulate(val, "High", &c.High) + delete(rawMsg, key) + case "low": + err = unpopulate(val, "Low", &c.Low) + delete(rawMsg, key) + case "medium": + err = unpopulate(val, "Medium", &c.Medium) + delete(rawMsg, key) + case "profiles": + err = unpopulate(val, "Profiles", &c.Profiles) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ConnectionURLType. +func (c ConnectionURLType) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "apexUrl", c.ApexURL) + populate(objectMap, "databaseTransformsUrl", c.DatabaseTransformsURL) + populate(objectMap, "graphStudioUrl", c.GraphStudioURL) + populate(objectMap, "machineLearningNotebookUrl", c.MachineLearningNotebookURL) + populate(objectMap, "mongoDbUrl", c.MongoDbURL) + populate(objectMap, "ordsUrl", c.OrdsURL) + populate(objectMap, "sqlDevWebUrl", c.SQLDevWebURL) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ConnectionURLType. +func (c *ConnectionURLType) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "apexUrl": + err = unpopulate(val, "ApexURL", &c.ApexURL) + delete(rawMsg, key) + case "databaseTransformsUrl": + err = unpopulate(val, "DatabaseTransformsURL", &c.DatabaseTransformsURL) + delete(rawMsg, key) + case "graphStudioUrl": + err = unpopulate(val, "GraphStudioURL", &c.GraphStudioURL) + delete(rawMsg, key) + case "machineLearningNotebookUrl": + err = unpopulate(val, "MachineLearningNotebookURL", &c.MachineLearningNotebookURL) + delete(rawMsg, key) + case "mongoDbUrl": + err = unpopulate(val, "MongoDbURL", &c.MongoDbURL) + delete(rawMsg, key) + case "ordsUrl": + err = unpopulate(val, "OrdsURL", &c.OrdsURL) + delete(rawMsg, key) + case "sqlDevWebUrl": + err = unpopulate(val, "SQLDevWebURL", &c.SQLDevWebURL) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type CustomerContact. +func (c CustomerContact) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "email", c.Email) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type CustomerContact. +func (c *CustomerContact) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "email": + err = unpopulate(val, "Email", &c.Email) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DNSPrivateView. +func (d DNSPrivateView) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", d.ID) + populate(objectMap, "name", d.Name) + populate(objectMap, "properties", d.Properties) + populate(objectMap, "systemData", d.SystemData) + populate(objectMap, "type", d.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DNSPrivateView. +func (d *DNSPrivateView) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &d.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &d.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &d.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &d.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &d.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DNSPrivateViewListResult. +func (d DNSPrivateViewListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", d.NextLink) + populate(objectMap, "value", d.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DNSPrivateViewListResult. +func (d *DNSPrivateViewListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &d.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &d.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DNSPrivateViewProperties. +func (d DNSPrivateViewProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "displayName", d.DisplayName) + populate(objectMap, "isProtected", d.IsProtected) + populate(objectMap, "lifecycleState", d.LifecycleState) + populate(objectMap, "ocid", d.Ocid) + populate(objectMap, "provisioningState", d.ProvisioningState) + populate(objectMap, "self", d.Self) + populateDateTimeRFC3339(objectMap, "timeCreated", d.TimeCreated) + populateDateTimeRFC3339(objectMap, "timeUpdated", d.TimeUpdated) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DNSPrivateViewProperties. +func (d *DNSPrivateViewProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "displayName": + err = unpopulate(val, "DisplayName", &d.DisplayName) + delete(rawMsg, key) + case "isProtected": + err = unpopulate(val, "IsProtected", &d.IsProtected) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &d.LifecycleState) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &d.Ocid) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &d.ProvisioningState) + delete(rawMsg, key) + case "self": + err = unpopulate(val, "Self", &d.Self) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &d.TimeCreated) + delete(rawMsg, key) + case "timeUpdated": + err = unpopulateDateTimeRFC3339(val, "TimeUpdated", &d.TimeUpdated) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DNSPrivateZone. +func (d DNSPrivateZone) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", d.ID) + populate(objectMap, "name", d.Name) + populate(objectMap, "properties", d.Properties) + populate(objectMap, "systemData", d.SystemData) + populate(objectMap, "type", d.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DNSPrivateZone. +func (d *DNSPrivateZone) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &d.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &d.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &d.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &d.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &d.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DNSPrivateZoneListResult. +func (d DNSPrivateZoneListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", d.NextLink) + populate(objectMap, "value", d.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DNSPrivateZoneListResult. +func (d *DNSPrivateZoneListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &d.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &d.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DNSPrivateZoneProperties. +func (d DNSPrivateZoneProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "isProtected", d.IsProtected) + populate(objectMap, "lifecycleState", d.LifecycleState) + populate(objectMap, "ocid", d.Ocid) + populate(objectMap, "provisioningState", d.ProvisioningState) + populate(objectMap, "self", d.Self) + populate(objectMap, "serial", d.Serial) + populateDateTimeRFC3339(objectMap, "timeCreated", d.TimeCreated) + populate(objectMap, "version", d.Version) + populate(objectMap, "viewId", d.ViewID) + populate(objectMap, "zoneType", d.ZoneType) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DNSPrivateZoneProperties. +func (d *DNSPrivateZoneProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "isProtected": + err = unpopulate(val, "IsProtected", &d.IsProtected) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &d.LifecycleState) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &d.Ocid) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &d.ProvisioningState) + delete(rawMsg, key) + case "self": + err = unpopulate(val, "Self", &d.Self) + delete(rawMsg, key) + case "serial": + err = unpopulate(val, "Serial", &d.Serial) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &d.TimeCreated) + delete(rawMsg, key) + case "version": + err = unpopulate(val, "Version", &d.Version) + delete(rawMsg, key) + case "viewId": + err = unpopulate(val, "ViewID", &d.ViewID) + delete(rawMsg, key) + case "zoneType": + err = unpopulate(val, "ZoneType", &d.ZoneType) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DataCollectionOptions. +func (d DataCollectionOptions) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "isDiagnosticsEventsEnabled", d.IsDiagnosticsEventsEnabled) + populate(objectMap, "isHealthMonitoringEnabled", d.IsHealthMonitoringEnabled) + populate(objectMap, "isIncidentLogsEnabled", d.IsIncidentLogsEnabled) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DataCollectionOptions. +func (d *DataCollectionOptions) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "isDiagnosticsEventsEnabled": + err = unpopulate(val, "IsDiagnosticsEventsEnabled", &d.IsDiagnosticsEventsEnabled) + delete(rawMsg, key) + case "isHealthMonitoringEnabled": + err = unpopulate(val, "IsHealthMonitoringEnabled", &d.IsHealthMonitoringEnabled) + delete(rawMsg, key) + case "isIncidentLogsEnabled": + err = unpopulate(val, "IsIncidentLogsEnabled", &d.IsIncidentLogsEnabled) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DayOfWeek. +func (d DayOfWeek) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "name", d.Name) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DayOfWeek. +func (d *DayOfWeek) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "name": + err = unpopulate(val, "Name", &d.Name) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DayOfWeekUpdate. +func (d DayOfWeekUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "name", d.Name) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DayOfWeekUpdate. +func (d *DayOfWeekUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "name": + err = unpopulate(val, "Name", &d.Name) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbActionResponse. +func (d DbActionResponse) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "provisioningState", d.ProvisioningState) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbActionResponse. +func (d *DbActionResponse) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &d.ProvisioningState) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbIormConfig. +func (d DbIormConfig) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "dbName", d.DbName) + populate(objectMap, "flashCacheLimit", d.FlashCacheLimit) + populate(objectMap, "share", d.Share) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbIormConfig. +func (d *DbIormConfig) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "dbName": + err = unpopulate(val, "DbName", &d.DbName) + delete(rawMsg, key) + case "flashCacheLimit": + err = unpopulate(val, "FlashCacheLimit", &d.FlashCacheLimit) + delete(rawMsg, key) + case "share": + err = unpopulate(val, "Share", &d.Share) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbNode. +func (d DbNode) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", d.ID) + populate(objectMap, "name", d.Name) + populate(objectMap, "properties", d.Properties) + populate(objectMap, "systemData", d.SystemData) + populate(objectMap, "type", d.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbNode. +func (d *DbNode) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &d.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &d.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &d.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &d.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &d.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbNodeAction. +func (d DbNodeAction) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "action", d.Action) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbNodeAction. +func (d *DbNodeAction) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "action": + err = unpopulate(val, "Action", &d.Action) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbNodeDetails. +func (d DbNodeDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "dbNodeId", d.DbNodeID) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbNodeDetails. +func (d *DbNodeDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "dbNodeId": + err = unpopulate(val, "DbNodeID", &d.DbNodeID) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbNodeListResult. +func (d DbNodeListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", d.NextLink) + populate(objectMap, "value", d.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbNodeListResult. +func (d *DbNodeListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &d.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &d.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbNodeProperties. +func (d DbNodeProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "additionalDetails", d.AdditionalDetails) + populate(objectMap, "backupIpId", d.BackupIPID) + populate(objectMap, "backupVnic2Id", d.BackupVnic2ID) + populate(objectMap, "backupVnicId", d.BackupVnicID) + populate(objectMap, "cpuCoreCount", d.CPUCoreCount) + populate(objectMap, "dbNodeStorageSizeInGbs", d.DbNodeStorageSizeInGbs) + populate(objectMap, "dbServerId", d.DbServerID) + populate(objectMap, "dbSystemId", d.DbSystemID) + populate(objectMap, "faultDomain", d.FaultDomain) + populate(objectMap, "hostIpId", d.HostIPID) + populate(objectMap, "hostname", d.Hostname) + populate(objectMap, "lifecycleDetails", d.LifecycleDetails) + populate(objectMap, "lifecycleState", d.LifecycleState) + populate(objectMap, "maintenanceType", d.MaintenanceType) + populate(objectMap, "memorySizeInGbs", d.MemorySizeInGbs) + populate(objectMap, "ocid", d.Ocid) + populate(objectMap, "provisioningState", d.ProvisioningState) + populate(objectMap, "softwareStorageSizeInGb", d.SoftwareStorageSizeInGb) + populateDateTimeRFC3339(objectMap, "timeCreated", d.TimeCreated) + populateDateTimeRFC3339(objectMap, "timeMaintenanceWindowEnd", d.TimeMaintenanceWindowEnd) + populateDateTimeRFC3339(objectMap, "timeMaintenanceWindowStart", d.TimeMaintenanceWindowStart) + populate(objectMap, "vnic2Id", d.Vnic2ID) + populate(objectMap, "vnicId", d.VnicID) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbNodeProperties. +func (d *DbNodeProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "additionalDetails": + err = unpopulate(val, "AdditionalDetails", &d.AdditionalDetails) + delete(rawMsg, key) + case "backupIpId": + err = unpopulate(val, "BackupIPID", &d.BackupIPID) + delete(rawMsg, key) + case "backupVnic2Id": + err = unpopulate(val, "BackupVnic2ID", &d.BackupVnic2ID) + delete(rawMsg, key) + case "backupVnicId": + err = unpopulate(val, "BackupVnicID", &d.BackupVnicID) + delete(rawMsg, key) + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &d.CPUCoreCount) + delete(rawMsg, key) + case "dbNodeStorageSizeInGbs": + err = unpopulate(val, "DbNodeStorageSizeInGbs", &d.DbNodeStorageSizeInGbs) + delete(rawMsg, key) + case "dbServerId": + err = unpopulate(val, "DbServerID", &d.DbServerID) + delete(rawMsg, key) + case "dbSystemId": + err = unpopulate(val, "DbSystemID", &d.DbSystemID) + delete(rawMsg, key) + case "faultDomain": + err = unpopulate(val, "FaultDomain", &d.FaultDomain) + delete(rawMsg, key) + case "hostIpId": + err = unpopulate(val, "HostIPID", &d.HostIPID) + delete(rawMsg, key) + case "hostname": + err = unpopulate(val, "Hostname", &d.Hostname) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &d.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &d.LifecycleState) + delete(rawMsg, key) + case "maintenanceType": + err = unpopulate(val, "MaintenanceType", &d.MaintenanceType) + delete(rawMsg, key) + case "memorySizeInGbs": + err = unpopulate(val, "MemorySizeInGbs", &d.MemorySizeInGbs) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &d.Ocid) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &d.ProvisioningState) + delete(rawMsg, key) + case "softwareStorageSizeInGb": + err = unpopulate(val, "SoftwareStorageSizeInGb", &d.SoftwareStorageSizeInGb) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &d.TimeCreated) + delete(rawMsg, key) + case "timeMaintenanceWindowEnd": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceWindowEnd", &d.TimeMaintenanceWindowEnd) + delete(rawMsg, key) + case "timeMaintenanceWindowStart": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceWindowStart", &d.TimeMaintenanceWindowStart) + delete(rawMsg, key) + case "vnic2Id": + err = unpopulate(val, "Vnic2ID", &d.Vnic2ID) + delete(rawMsg, key) + case "vnicId": + err = unpopulate(val, "VnicID", &d.VnicID) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbServer. +func (d DbServer) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", d.ID) + populate(objectMap, "name", d.Name) + populate(objectMap, "properties", d.Properties) + populate(objectMap, "systemData", d.SystemData) + populate(objectMap, "type", d.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbServer. +func (d *DbServer) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &d.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &d.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &d.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &d.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &d.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbServerListResult. +func (d DbServerListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", d.NextLink) + populate(objectMap, "value", d.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbServerListResult. +func (d *DbServerListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &d.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &d.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbServerPatchingDetails. +func (d DbServerPatchingDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "estimatedPatchDuration", d.EstimatedPatchDuration) + populate(objectMap, "patchingStatus", d.PatchingStatus) + populateDateTimeRFC3339(objectMap, "timePatchingEnded", d.TimePatchingEnded) + populateDateTimeRFC3339(objectMap, "timePatchingStarted", d.TimePatchingStarted) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbServerPatchingDetails. +func (d *DbServerPatchingDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "estimatedPatchDuration": + err = unpopulate(val, "EstimatedPatchDuration", &d.EstimatedPatchDuration) + delete(rawMsg, key) + case "patchingStatus": + err = unpopulate(val, "PatchingStatus", &d.PatchingStatus) + delete(rawMsg, key) + case "timePatchingEnded": + err = unpopulateDateTimeRFC3339(val, "TimePatchingEnded", &d.TimePatchingEnded) + delete(rawMsg, key) + case "timePatchingStarted": + err = unpopulateDateTimeRFC3339(val, "TimePatchingStarted", &d.TimePatchingStarted) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbServerProperties. +func (d DbServerProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "autonomousVmClusterIds", d.AutonomousVMClusterIDs) + populate(objectMap, "autonomousVirtualMachineIds", d.AutonomousVirtualMachineIDs) + populate(objectMap, "cpuCoreCount", d.CPUCoreCount) + populate(objectMap, "compartmentId", d.CompartmentID) + populate(objectMap, "computeModel", d.ComputeModel) + populate(objectMap, "dbNodeIds", d.DbNodeIDs) + populate(objectMap, "dbNodeStorageSizeInGbs", d.DbNodeStorageSizeInGbs) + populate(objectMap, "dbServerPatchingDetails", d.DbServerPatchingDetails) + populate(objectMap, "displayName", d.DisplayName) + populate(objectMap, "exadataInfrastructureId", d.ExadataInfrastructureID) + populate(objectMap, "lifecycleDetails", d.LifecycleDetails) + populate(objectMap, "lifecycleState", d.LifecycleState) + populate(objectMap, "maxCpuCount", d.MaxCPUCount) + populate(objectMap, "maxDbNodeStorageInGbs", d.MaxDbNodeStorageInGbs) + populate(objectMap, "maxMemoryInGbs", d.MaxMemoryInGbs) + populate(objectMap, "memorySizeInGbs", d.MemorySizeInGbs) + populate(objectMap, "ocid", d.Ocid) + populate(objectMap, "provisioningState", d.ProvisioningState) + populate(objectMap, "shape", d.Shape) + populateDateTimeRFC3339(objectMap, "timeCreated", d.TimeCreated) + populate(objectMap, "vmClusterIds", d.VMClusterIDs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbServerProperties. +func (d *DbServerProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "autonomousVmClusterIds": + err = unpopulate(val, "AutonomousVMClusterIDs", &d.AutonomousVMClusterIDs) + delete(rawMsg, key) + case "autonomousVirtualMachineIds": + err = unpopulate(val, "AutonomousVirtualMachineIDs", &d.AutonomousVirtualMachineIDs) + delete(rawMsg, key) + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &d.CPUCoreCount) + delete(rawMsg, key) + case "compartmentId": + err = unpopulate(val, "CompartmentID", &d.CompartmentID) + delete(rawMsg, key) + case "computeModel": + err = unpopulate(val, "ComputeModel", &d.ComputeModel) + delete(rawMsg, key) + case "dbNodeIds": + err = unpopulate(val, "DbNodeIDs", &d.DbNodeIDs) + delete(rawMsg, key) + case "dbNodeStorageSizeInGbs": + err = unpopulate(val, "DbNodeStorageSizeInGbs", &d.DbNodeStorageSizeInGbs) + delete(rawMsg, key) + case "dbServerPatchingDetails": + err = unpopulate(val, "DbServerPatchingDetails", &d.DbServerPatchingDetails) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &d.DisplayName) + delete(rawMsg, key) + case "exadataInfrastructureId": + err = unpopulate(val, "ExadataInfrastructureID", &d.ExadataInfrastructureID) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &d.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &d.LifecycleState) + delete(rawMsg, key) + case "maxCpuCount": + err = unpopulate(val, "MaxCPUCount", &d.MaxCPUCount) + delete(rawMsg, key) + case "maxDbNodeStorageInGbs": + err = unpopulate(val, "MaxDbNodeStorageInGbs", &d.MaxDbNodeStorageInGbs) + delete(rawMsg, key) + case "maxMemoryInGbs": + err = unpopulate(val, "MaxMemoryInGbs", &d.MaxMemoryInGbs) + delete(rawMsg, key) + case "memorySizeInGbs": + err = unpopulate(val, "MemorySizeInGbs", &d.MemorySizeInGbs) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &d.Ocid) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &d.ProvisioningState) + delete(rawMsg, key) + case "shape": + err = unpopulate(val, "Shape", &d.Shape) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &d.TimeCreated) + delete(rawMsg, key) + case "vmClusterIds": + err = unpopulate(val, "VMClusterIDs", &d.VMClusterIDs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbSystemShape. +func (d DbSystemShape) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", d.ID) + populate(objectMap, "name", d.Name) + populate(objectMap, "properties", d.Properties) + populate(objectMap, "systemData", d.SystemData) + populate(objectMap, "type", d.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbSystemShape. +func (d *DbSystemShape) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &d.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &d.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &d.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &d.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &d.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbSystemShapeListResult. +func (d DbSystemShapeListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", d.NextLink) + populate(objectMap, "value", d.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbSystemShapeListResult. +func (d *DbSystemShapeListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &d.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &d.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DbSystemShapeProperties. +func (d DbSystemShapeProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "areServerTypesSupported", d.AreServerTypesSupported) + populate(objectMap, "availableCoreCount", d.AvailableCoreCount) + populate(objectMap, "availableCoreCountPerNode", d.AvailableCoreCountPerNode) + populate(objectMap, "availableDataStorageInTbs", d.AvailableDataStorageInTbs) + populate(objectMap, "availableDataStoragePerServerInTbs", d.AvailableDataStoragePerServerInTbs) + populate(objectMap, "availableDbNodePerNodeInGbs", d.AvailableDbNodePerNodeInGbs) + populate(objectMap, "availableDbNodeStorageInGbs", d.AvailableDbNodeStorageInGbs) + populate(objectMap, "availableMemoryInGbs", d.AvailableMemoryInGbs) + populate(objectMap, "availableMemoryPerNodeInGbs", d.AvailableMemoryPerNodeInGbs) + populate(objectMap, "computeModel", d.ComputeModel) + populate(objectMap, "coreCountIncrement", d.CoreCountIncrement) + populate(objectMap, "displayName", d.DisplayName) + populate(objectMap, "maxStorageCount", d.MaxStorageCount) + populate(objectMap, "maximumNodeCount", d.MaximumNodeCount) + populate(objectMap, "minCoreCountPerNode", d.MinCoreCountPerNode) + populate(objectMap, "minDataStorageInTbs", d.MinDataStorageInTbs) + populate(objectMap, "minDbNodeStoragePerNodeInGbs", d.MinDbNodeStoragePerNodeInGbs) + populate(objectMap, "minMemoryPerNodeInGbs", d.MinMemoryPerNodeInGbs) + populate(objectMap, "minStorageCount", d.MinStorageCount) + populate(objectMap, "minimumCoreCount", d.MinimumCoreCount) + populate(objectMap, "minimumNodeCount", d.MinimumNodeCount) + populate(objectMap, "runtimeMinimumCoreCount", d.RuntimeMinimumCoreCount) + populate(objectMap, "shapeFamily", d.ShapeFamily) + populate(objectMap, "shapeName", d.ShapeName) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DbSystemShapeProperties. +func (d *DbSystemShapeProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "areServerTypesSupported": + err = unpopulate(val, "AreServerTypesSupported", &d.AreServerTypesSupported) + delete(rawMsg, key) + case "availableCoreCount": + err = unpopulate(val, "AvailableCoreCount", &d.AvailableCoreCount) + delete(rawMsg, key) + case "availableCoreCountPerNode": + err = unpopulate(val, "AvailableCoreCountPerNode", &d.AvailableCoreCountPerNode) + delete(rawMsg, key) + case "availableDataStorageInTbs": + err = unpopulate(val, "AvailableDataStorageInTbs", &d.AvailableDataStorageInTbs) + delete(rawMsg, key) + case "availableDataStoragePerServerInTbs": + err = unpopulate(val, "AvailableDataStoragePerServerInTbs", &d.AvailableDataStoragePerServerInTbs) + delete(rawMsg, key) + case "availableDbNodePerNodeInGbs": + err = unpopulate(val, "AvailableDbNodePerNodeInGbs", &d.AvailableDbNodePerNodeInGbs) + delete(rawMsg, key) + case "availableDbNodeStorageInGbs": + err = unpopulate(val, "AvailableDbNodeStorageInGbs", &d.AvailableDbNodeStorageInGbs) + delete(rawMsg, key) + case "availableMemoryInGbs": + err = unpopulate(val, "AvailableMemoryInGbs", &d.AvailableMemoryInGbs) + delete(rawMsg, key) + case "availableMemoryPerNodeInGbs": + err = unpopulate(val, "AvailableMemoryPerNodeInGbs", &d.AvailableMemoryPerNodeInGbs) + delete(rawMsg, key) + case "computeModel": + err = unpopulate(val, "ComputeModel", &d.ComputeModel) + delete(rawMsg, key) + case "coreCountIncrement": + err = unpopulate(val, "CoreCountIncrement", &d.CoreCountIncrement) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &d.DisplayName) + delete(rawMsg, key) + case "maxStorageCount": + err = unpopulate(val, "MaxStorageCount", &d.MaxStorageCount) + delete(rawMsg, key) + case "maximumNodeCount": + err = unpopulate(val, "MaximumNodeCount", &d.MaximumNodeCount) + delete(rawMsg, key) + case "minCoreCountPerNode": + err = unpopulate(val, "MinCoreCountPerNode", &d.MinCoreCountPerNode) + delete(rawMsg, key) + case "minDataStorageInTbs": + err = unpopulate(val, "MinDataStorageInTbs", &d.MinDataStorageInTbs) + delete(rawMsg, key) + case "minDbNodeStoragePerNodeInGbs": + err = unpopulate(val, "MinDbNodeStoragePerNodeInGbs", &d.MinDbNodeStoragePerNodeInGbs) + delete(rawMsg, key) + case "minMemoryPerNodeInGbs": + err = unpopulate(val, "MinMemoryPerNodeInGbs", &d.MinMemoryPerNodeInGbs) + delete(rawMsg, key) + case "minStorageCount": + err = unpopulate(val, "MinStorageCount", &d.MinStorageCount) + delete(rawMsg, key) + case "minimumCoreCount": + err = unpopulate(val, "MinimumCoreCount", &d.MinimumCoreCount) + delete(rawMsg, key) + case "minimumNodeCount": + err = unpopulate(val, "MinimumNodeCount", &d.MinimumNodeCount) + delete(rawMsg, key) + case "runtimeMinimumCoreCount": + err = unpopulate(val, "RuntimeMinimumCoreCount", &d.RuntimeMinimumCoreCount) + delete(rawMsg, key) + case "shapeFamily": + err = unpopulate(val, "ShapeFamily", &d.ShapeFamily) + delete(rawMsg, key) + case "shapeName": + err = unpopulate(val, "ShapeName", &d.ShapeName) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DefinedFileSystemConfiguration. +func (d DefinedFileSystemConfiguration) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "isBackupPartition", d.IsBackupPartition) + populate(objectMap, "isResizable", d.IsResizable) + populate(objectMap, "minSizeGb", d.MinSizeGb) + populate(objectMap, "mountPoint", d.MountPoint) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DefinedFileSystemConfiguration. +func (d *DefinedFileSystemConfiguration) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "isBackupPartition": + err = unpopulate(val, "IsBackupPartition", &d.IsBackupPartition) + delete(rawMsg, key) + case "isResizable": + err = unpopulate(val, "IsResizable", &d.IsResizable) + delete(rawMsg, key) + case "minSizeGb": + err = unpopulate(val, "MinSizeGb", &d.MinSizeGb) + delete(rawMsg, key) + case "mountPoint": + err = unpopulate(val, "MountPoint", &d.MountPoint) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DisasterRecoveryConfigurationDetails. +func (d DisasterRecoveryConfigurationDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "disasterRecoveryType", d.DisasterRecoveryType) + populate(objectMap, "isReplicateAutomaticBackups", d.IsReplicateAutomaticBackups) + populate(objectMap, "isSnapshotStandby", d.IsSnapshotStandby) + populateDateTimeRFC3339(objectMap, "timeSnapshotStandbyEnabledTill", d.TimeSnapshotStandbyEnabledTill) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DisasterRecoveryConfigurationDetails. +func (d *DisasterRecoveryConfigurationDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "disasterRecoveryType": + err = unpopulate(val, "DisasterRecoveryType", &d.DisasterRecoveryType) + delete(rawMsg, key) + case "isReplicateAutomaticBackups": + err = unpopulate(val, "IsReplicateAutomaticBackups", &d.IsReplicateAutomaticBackups) + delete(rawMsg, key) + case "isSnapshotStandby": + err = unpopulate(val, "IsSnapshotStandby", &d.IsSnapshotStandby) + delete(rawMsg, key) + case "timeSnapshotStandbyEnabledTill": + err = unpopulateDateTimeRFC3339(val, "TimeSnapshotStandbyEnabledTill", &d.TimeSnapshotStandbyEnabledTill) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type EstimatedPatchingTime. +func (e EstimatedPatchingTime) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "estimatedDbServerPatchingTime", e.EstimatedDbServerPatchingTime) + populate(objectMap, "estimatedNetworkSwitchesPatchingTime", e.EstimatedNetworkSwitchesPatchingTime) + populate(objectMap, "estimatedStorageServerPatchingTime", e.EstimatedStorageServerPatchingTime) + populate(objectMap, "totalEstimatedPatchingTime", e.TotalEstimatedPatchingTime) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type EstimatedPatchingTime. +func (e *EstimatedPatchingTime) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "estimatedDbServerPatchingTime": + err = unpopulate(val, "EstimatedDbServerPatchingTime", &e.EstimatedDbServerPatchingTime) + delete(rawMsg, key) + case "estimatedNetworkSwitchesPatchingTime": + err = unpopulate(val, "EstimatedNetworkSwitchesPatchingTime", &e.EstimatedNetworkSwitchesPatchingTime) + delete(rawMsg, key) + case "estimatedStorageServerPatchingTime": + err = unpopulate(val, "EstimatedStorageServerPatchingTime", &e.EstimatedStorageServerPatchingTime) + delete(rawMsg, key) + case "totalEstimatedPatchingTime": + err = unpopulate(val, "TotalEstimatedPatchingTime", &e.TotalEstimatedPatchingTime) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExadataIormConfig. +func (e ExadataIormConfig) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "dbPlans", e.DbPlans) + populate(objectMap, "lifecycleDetails", e.LifecycleDetails) + populate(objectMap, "lifecycleState", e.LifecycleState) + populate(objectMap, "objective", e.Objective) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExadataIormConfig. +func (e *ExadataIormConfig) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "dbPlans": + err = unpopulate(val, "DbPlans", &e.DbPlans) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &e.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &e.LifecycleState) + delete(rawMsg, key) + case "objective": + err = unpopulate(val, "Objective", &e.Objective) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExadbVMCluster. +func (e ExadbVMCluster) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", e.ID) + populate(objectMap, "location", e.Location) + populate(objectMap, "name", e.Name) + populate(objectMap, "properties", e.Properties) + populate(objectMap, "systemData", e.SystemData) + populate(objectMap, "tags", e.Tags) + populate(objectMap, "type", e.Type) + populate(objectMap, "zones", e.Zones) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExadbVMCluster. +func (e *ExadbVMCluster) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &e.ID) + delete(rawMsg, key) + case "location": + err = unpopulate(val, "Location", &e.Location) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &e.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &e.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &e.SystemData) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &e.Tags) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &e.Type) + delete(rawMsg, key) + case "zones": + err = unpopulate(val, "Zones", &e.Zones) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExadbVMClusterListResult. +func (e ExadbVMClusterListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", e.NextLink) + populate(objectMap, "value", e.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExadbVMClusterListResult. +func (e *ExadbVMClusterListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &e.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &e.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExadbVMClusterProperties. +func (e ExadbVMClusterProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "backupSubnetCidr", e.BackupSubnetCidr) + populate(objectMap, "backupSubnetOcid", e.BackupSubnetOcid) + populate(objectMap, "clusterName", e.ClusterName) + populate(objectMap, "dataCollectionOptions", e.DataCollectionOptions) + populate(objectMap, "displayName", e.DisplayName) + populate(objectMap, "domain", e.Domain) + populate(objectMap, "enabledEcpuCount", e.EnabledEcpuCount) + populate(objectMap, "exascaleDbStorageVaultId", e.ExascaleDbStorageVaultID) + populate(objectMap, "giVersion", e.GiVersion) + populate(objectMap, "gridImageOcid", e.GridImageOcid) + populate(objectMap, "gridImageType", e.GridImageType) + populate(objectMap, "hostname", e.Hostname) + populate(objectMap, "iormConfigCache", e.IormConfigCache) + populate(objectMap, "licenseModel", e.LicenseModel) + populate(objectMap, "lifecycleDetails", e.LifecycleDetails) + populate(objectMap, "lifecycleState", e.LifecycleState) + populate(objectMap, "listenerPort", e.ListenerPort) + populate(objectMap, "memorySizeInGbs", e.MemorySizeInGbs) + populate(objectMap, "nodeCount", e.NodeCount) + populate(objectMap, "nsgCidrs", e.NsgCidrs) + populate(objectMap, "nsgUrl", e.NsgURL) + populate(objectMap, "ociUrl", e.OciURL) + populate(objectMap, "ocid", e.Ocid) + populate(objectMap, "privateZoneOcid", e.PrivateZoneOcid) + populate(objectMap, "provisioningState", e.ProvisioningState) + populate(objectMap, "sshPublicKeys", e.SSHPublicKeys) + populate(objectMap, "scanDnsName", e.ScanDNSName) + populate(objectMap, "scanDnsRecordId", e.ScanDNSRecordID) + populate(objectMap, "scanIpIds", e.ScanIPIDs) + populate(objectMap, "scanListenerPortTcp", e.ScanListenerPortTCP) + populate(objectMap, "scanListenerPortTcpSsl", e.ScanListenerPortTCPSSL) + populate(objectMap, "shape", e.Shape) + populate(objectMap, "snapshotFileSystemStorage", e.SnapshotFileSystemStorage) + populate(objectMap, "subnetId", e.SubnetID) + populate(objectMap, "subnetOcid", e.SubnetOcid) + populate(objectMap, "systemVersion", e.SystemVersion) + populate(objectMap, "timeZone", e.TimeZone) + populate(objectMap, "totalEcpuCount", e.TotalEcpuCount) + populate(objectMap, "totalFileSystemStorage", e.TotalFileSystemStorage) + populate(objectMap, "vmFileSystemStorage", e.VMFileSystemStorage) + populate(objectMap, "vipIds", e.VipIDs) + populate(objectMap, "vnetId", e.VnetID) + populate(objectMap, "zoneOcid", e.ZoneOcid) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExadbVMClusterProperties. +func (e *ExadbVMClusterProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "backupSubnetCidr": + err = unpopulate(val, "BackupSubnetCidr", &e.BackupSubnetCidr) + delete(rawMsg, key) + case "backupSubnetOcid": + err = unpopulate(val, "BackupSubnetOcid", &e.BackupSubnetOcid) + delete(rawMsg, key) + case "clusterName": + err = unpopulate(val, "ClusterName", &e.ClusterName) + delete(rawMsg, key) + case "dataCollectionOptions": + err = unpopulate(val, "DataCollectionOptions", &e.DataCollectionOptions) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &e.DisplayName) + delete(rawMsg, key) + case "domain": + err = unpopulate(val, "Domain", &e.Domain) + delete(rawMsg, key) + case "enabledEcpuCount": + err = unpopulate(val, "EnabledEcpuCount", &e.EnabledEcpuCount) + delete(rawMsg, key) + case "exascaleDbStorageVaultId": + err = unpopulate(val, "ExascaleDbStorageVaultID", &e.ExascaleDbStorageVaultID) + delete(rawMsg, key) + case "giVersion": + err = unpopulate(val, "GiVersion", &e.GiVersion) + delete(rawMsg, key) + case "gridImageOcid": + err = unpopulate(val, "GridImageOcid", &e.GridImageOcid) + delete(rawMsg, key) + case "gridImageType": + err = unpopulate(val, "GridImageType", &e.GridImageType) + delete(rawMsg, key) + case "hostname": + err = unpopulate(val, "Hostname", &e.Hostname) + delete(rawMsg, key) + case "iormConfigCache": + err = unpopulate(val, "IormConfigCache", &e.IormConfigCache) + delete(rawMsg, key) + case "licenseModel": + err = unpopulate(val, "LicenseModel", &e.LicenseModel) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &e.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &e.LifecycleState) + delete(rawMsg, key) + case "listenerPort": + err = unpopulate(val, "ListenerPort", &e.ListenerPort) + delete(rawMsg, key) + case "memorySizeInGbs": + err = unpopulate(val, "MemorySizeInGbs", &e.MemorySizeInGbs) + delete(rawMsg, key) + case "nodeCount": + err = unpopulate(val, "NodeCount", &e.NodeCount) + delete(rawMsg, key) + case "nsgCidrs": + err = unpopulate(val, "NsgCidrs", &e.NsgCidrs) + delete(rawMsg, key) + case "nsgUrl": + err = unpopulate(val, "NsgURL", &e.NsgURL) + delete(rawMsg, key) + case "ociUrl": + err = unpopulate(val, "OciURL", &e.OciURL) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &e.Ocid) + delete(rawMsg, key) + case "privateZoneOcid": + err = unpopulate(val, "PrivateZoneOcid", &e.PrivateZoneOcid) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &e.ProvisioningState) + delete(rawMsg, key) + case "sshPublicKeys": + err = unpopulate(val, "SSHPublicKeys", &e.SSHPublicKeys) + delete(rawMsg, key) + case "scanDnsName": + err = unpopulate(val, "ScanDNSName", &e.ScanDNSName) + delete(rawMsg, key) + case "scanDnsRecordId": + err = unpopulate(val, "ScanDNSRecordID", &e.ScanDNSRecordID) + delete(rawMsg, key) + case "scanIpIds": + err = unpopulate(val, "ScanIPIDs", &e.ScanIPIDs) + delete(rawMsg, key) + case "scanListenerPortTcp": + err = unpopulate(val, "ScanListenerPortTCP", &e.ScanListenerPortTCP) + delete(rawMsg, key) + case "scanListenerPortTcpSsl": + err = unpopulate(val, "ScanListenerPortTCPSSL", &e.ScanListenerPortTCPSSL) + delete(rawMsg, key) + case "shape": + err = unpopulate(val, "Shape", &e.Shape) + delete(rawMsg, key) + case "snapshotFileSystemStorage": + err = unpopulate(val, "SnapshotFileSystemStorage", &e.SnapshotFileSystemStorage) + delete(rawMsg, key) + case "subnetId": + err = unpopulate(val, "SubnetID", &e.SubnetID) + delete(rawMsg, key) + case "subnetOcid": + err = unpopulate(val, "SubnetOcid", &e.SubnetOcid) + delete(rawMsg, key) + case "systemVersion": + err = unpopulate(val, "SystemVersion", &e.SystemVersion) + delete(rawMsg, key) + case "timeZone": + err = unpopulate(val, "TimeZone", &e.TimeZone) + delete(rawMsg, key) + case "totalEcpuCount": + err = unpopulate(val, "TotalEcpuCount", &e.TotalEcpuCount) + delete(rawMsg, key) + case "totalFileSystemStorage": + err = unpopulate(val, "TotalFileSystemStorage", &e.TotalFileSystemStorage) + delete(rawMsg, key) + case "vmFileSystemStorage": + err = unpopulate(val, "VMFileSystemStorage", &e.VMFileSystemStorage) + delete(rawMsg, key) + case "vipIds": + err = unpopulate(val, "VipIDs", &e.VipIDs) + delete(rawMsg, key) + case "vnetId": + err = unpopulate(val, "VnetID", &e.VnetID) + delete(rawMsg, key) + case "zoneOcid": + err = unpopulate(val, "ZoneOcid", &e.ZoneOcid) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExadbVMClusterStorageDetails. +func (e ExadbVMClusterStorageDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "totalSizeInGbs", e.TotalSizeInGbs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExadbVMClusterStorageDetails. +func (e *ExadbVMClusterStorageDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "totalSizeInGbs": + err = unpopulate(val, "TotalSizeInGbs", &e.TotalSizeInGbs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExadbVMClusterUpdate. +func (e ExadbVMClusterUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "properties", e.Properties) + populate(objectMap, "tags", e.Tags) + populate(objectMap, "zones", e.Zones) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExadbVMClusterUpdate. +func (e *ExadbVMClusterUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "properties": + err = unpopulate(val, "Properties", &e.Properties) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &e.Tags) + delete(rawMsg, key) + case "zones": + err = unpopulate(val, "Zones", &e.Zones) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExadbVMClusterUpdateProperties. +func (e ExadbVMClusterUpdateProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nodeCount", e.NodeCount) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExadbVMClusterUpdateProperties. +func (e *ExadbVMClusterUpdateProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nodeCount": + err = unpopulate(val, "NodeCount", &e.NodeCount) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExascaleDbNode. +func (e ExascaleDbNode) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", e.ID) + populate(objectMap, "name", e.Name) + populate(objectMap, "properties", e.Properties) + populate(objectMap, "systemData", e.SystemData) + populate(objectMap, "type", e.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExascaleDbNode. +func (e *ExascaleDbNode) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &e.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &e.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &e.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &e.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &e.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExascaleDbNodeListResult. +func (e ExascaleDbNodeListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", e.NextLink) + populate(objectMap, "value", e.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExascaleDbNodeListResult. +func (e *ExascaleDbNodeListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &e.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &e.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExascaleDbNodeProperties. +func (e ExascaleDbNodeProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "additionalDetails", e.AdditionalDetails) + populate(objectMap, "cpuCoreCount", e.CPUCoreCount) + populate(objectMap, "dbNodeStorageSizeInGbs", e.DbNodeStorageSizeInGbs) + populate(objectMap, "faultDomain", e.FaultDomain) + populate(objectMap, "hostname", e.Hostname) + populate(objectMap, "lifecycleState", e.LifecycleState) + populate(objectMap, "maintenanceType", e.MaintenanceType) + populate(objectMap, "memorySizeInGbs", e.MemorySizeInGbs) + populate(objectMap, "ocid", e.Ocid) + populate(objectMap, "softwareStorageSizeInGb", e.SoftwareStorageSizeInGb) + populateDateTimeRFC3339(objectMap, "timeMaintenanceWindowEnd", e.TimeMaintenanceWindowEnd) + populateDateTimeRFC3339(objectMap, "timeMaintenanceWindowStart", e.TimeMaintenanceWindowStart) + populate(objectMap, "totalCpuCoreCount", e.TotalCPUCoreCount) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExascaleDbNodeProperties. +func (e *ExascaleDbNodeProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "additionalDetails": + err = unpopulate(val, "AdditionalDetails", &e.AdditionalDetails) + delete(rawMsg, key) + case "cpuCoreCount": + err = unpopulate(val, "CPUCoreCount", &e.CPUCoreCount) + delete(rawMsg, key) + case "dbNodeStorageSizeInGbs": + err = unpopulate(val, "DbNodeStorageSizeInGbs", &e.DbNodeStorageSizeInGbs) + delete(rawMsg, key) + case "faultDomain": + err = unpopulate(val, "FaultDomain", &e.FaultDomain) + delete(rawMsg, key) + case "hostname": + err = unpopulate(val, "Hostname", &e.Hostname) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &e.LifecycleState) + delete(rawMsg, key) + case "maintenanceType": + err = unpopulate(val, "MaintenanceType", &e.MaintenanceType) + delete(rawMsg, key) + case "memorySizeInGbs": + err = unpopulate(val, "MemorySizeInGbs", &e.MemorySizeInGbs) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &e.Ocid) + delete(rawMsg, key) + case "softwareStorageSizeInGb": + err = unpopulate(val, "SoftwareStorageSizeInGb", &e.SoftwareStorageSizeInGb) + delete(rawMsg, key) + case "timeMaintenanceWindowEnd": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceWindowEnd", &e.TimeMaintenanceWindowEnd) + delete(rawMsg, key) + case "timeMaintenanceWindowStart": + err = unpopulateDateTimeRFC3339(val, "TimeMaintenanceWindowStart", &e.TimeMaintenanceWindowStart) + delete(rawMsg, key) + case "totalCpuCoreCount": + err = unpopulate(val, "TotalCPUCoreCount", &e.TotalCPUCoreCount) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExascaleDbStorageDetails. +func (e ExascaleDbStorageDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "availableSizeInGbs", e.AvailableSizeInGbs) + populate(objectMap, "totalSizeInGbs", e.TotalSizeInGbs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExascaleDbStorageDetails. +func (e *ExascaleDbStorageDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "availableSizeInGbs": + err = unpopulate(val, "AvailableSizeInGbs", &e.AvailableSizeInGbs) + delete(rawMsg, key) + case "totalSizeInGbs": + err = unpopulate(val, "TotalSizeInGbs", &e.TotalSizeInGbs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExascaleDbStorageInputDetails. +func (e ExascaleDbStorageInputDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "totalSizeInGbs", e.TotalSizeInGbs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExascaleDbStorageInputDetails. +func (e *ExascaleDbStorageInputDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "totalSizeInGbs": + err = unpopulate(val, "TotalSizeInGbs", &e.TotalSizeInGbs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExascaleDbStorageVault. +func (e ExascaleDbStorageVault) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", e.ID) + populate(objectMap, "location", e.Location) + populate(objectMap, "name", e.Name) + populate(objectMap, "properties", e.Properties) + populate(objectMap, "systemData", e.SystemData) + populate(objectMap, "tags", e.Tags) + populate(objectMap, "type", e.Type) + populate(objectMap, "zones", e.Zones) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExascaleDbStorageVault. +func (e *ExascaleDbStorageVault) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &e.ID) + delete(rawMsg, key) + case "location": + err = unpopulate(val, "Location", &e.Location) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &e.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &e.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &e.SystemData) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &e.Tags) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &e.Type) + delete(rawMsg, key) + case "zones": + err = unpopulate(val, "Zones", &e.Zones) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExascaleDbStorageVaultListResult. +func (e ExascaleDbStorageVaultListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", e.NextLink) + populate(objectMap, "value", e.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExascaleDbStorageVaultListResult. +func (e *ExascaleDbStorageVaultListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &e.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &e.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExascaleDbStorageVaultProperties. +func (e ExascaleDbStorageVaultProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "additionalFlashCacheInPercent", e.AdditionalFlashCacheInPercent) + populate(objectMap, "description", e.Description) + populate(objectMap, "displayName", e.DisplayName) + populate(objectMap, "highCapacityDatabaseStorage", e.HighCapacityDatabaseStorage) + populate(objectMap, "highCapacityDatabaseStorageInput", e.HighCapacityDatabaseStorageInput) + populate(objectMap, "lifecycleDetails", e.LifecycleDetails) + populate(objectMap, "lifecycleState", e.LifecycleState) + populate(objectMap, "ociUrl", e.OciURL) + populate(objectMap, "ocid", e.Ocid) + populate(objectMap, "provisioningState", e.ProvisioningState) + populate(objectMap, "timeZone", e.TimeZone) + populate(objectMap, "vmClusterCount", e.VMClusterCount) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExascaleDbStorageVaultProperties. +func (e *ExascaleDbStorageVaultProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "additionalFlashCacheInPercent": + err = unpopulate(val, "AdditionalFlashCacheInPercent", &e.AdditionalFlashCacheInPercent) + delete(rawMsg, key) + case "description": + err = unpopulate(val, "Description", &e.Description) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &e.DisplayName) + delete(rawMsg, key) + case "highCapacityDatabaseStorage": + err = unpopulate(val, "HighCapacityDatabaseStorage", &e.HighCapacityDatabaseStorage) + delete(rawMsg, key) + case "highCapacityDatabaseStorageInput": + err = unpopulate(val, "HighCapacityDatabaseStorageInput", &e.HighCapacityDatabaseStorageInput) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &e.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &e.LifecycleState) + delete(rawMsg, key) + case "ociUrl": + err = unpopulate(val, "OciURL", &e.OciURL) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &e.Ocid) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &e.ProvisioningState) + delete(rawMsg, key) + case "timeZone": + err = unpopulate(val, "TimeZone", &e.TimeZone) + delete(rawMsg, key) + case "vmClusterCount": + err = unpopulate(val, "VMClusterCount", &e.VMClusterCount) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExascaleDbStorageVaultTagsUpdate. +func (e ExascaleDbStorageVaultTagsUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "tags", e.Tags) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExascaleDbStorageVaultTagsUpdate. +func (e *ExascaleDbStorageVaultTagsUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "tags": + err = unpopulate(val, "Tags", &e.Tags) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type FileSystemConfigurationDetails. +func (f FileSystemConfigurationDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "fileSystemSizeGb", f.FileSystemSizeGb) + populate(objectMap, "mountPoint", f.MountPoint) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type FileSystemConfigurationDetails. +func (f *FileSystemConfigurationDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "fileSystemSizeGb": + err = unpopulate(val, "FileSystemSizeGb", &f.FileSystemSizeGb) + delete(rawMsg, key) + case "mountPoint": + err = unpopulate(val, "MountPoint", &f.MountPoint) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type FlexComponent. +func (f FlexComponent) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", f.ID) + populate(objectMap, "name", f.Name) + populate(objectMap, "properties", f.Properties) + populate(objectMap, "systemData", f.SystemData) + populate(objectMap, "type", f.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type FlexComponent. +func (f *FlexComponent) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &f.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &f.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &f.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &f.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &f.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type FlexComponentListResult. +func (f FlexComponentListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", f.NextLink) + populate(objectMap, "value", f.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type FlexComponentListResult. +func (f *FlexComponentListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &f.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &f.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type FlexComponentProperties. +func (f FlexComponentProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "availableCoreCount", f.AvailableCoreCount) + populate(objectMap, "availableDbStorageInGbs", f.AvailableDbStorageInGbs) + populate(objectMap, "availableLocalStorageInGbs", f.AvailableLocalStorageInGbs) + populate(objectMap, "availableMemoryInGbs", f.AvailableMemoryInGbs) + populate(objectMap, "computeModel", f.ComputeModel) + populate(objectMap, "descriptionSummary", f.DescriptionSummary) + populate(objectMap, "hardwareType", f.HardwareType) + populate(objectMap, "minimumCoreCount", f.MinimumCoreCount) + populate(objectMap, "runtimeMinimumCoreCount", f.RuntimeMinimumCoreCount) + populate(objectMap, "shape", f.Shape) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type FlexComponentProperties. +func (f *FlexComponentProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "availableCoreCount": + err = unpopulate(val, "AvailableCoreCount", &f.AvailableCoreCount) + delete(rawMsg, key) + case "availableDbStorageInGbs": + err = unpopulate(val, "AvailableDbStorageInGbs", &f.AvailableDbStorageInGbs) + delete(rawMsg, key) + case "availableLocalStorageInGbs": + err = unpopulate(val, "AvailableLocalStorageInGbs", &f.AvailableLocalStorageInGbs) + delete(rawMsg, key) + case "availableMemoryInGbs": + err = unpopulate(val, "AvailableMemoryInGbs", &f.AvailableMemoryInGbs) + delete(rawMsg, key) + case "computeModel": + err = unpopulate(val, "ComputeModel", &f.ComputeModel) + delete(rawMsg, key) + case "descriptionSummary": + err = unpopulate(val, "DescriptionSummary", &f.DescriptionSummary) + delete(rawMsg, key) + case "hardwareType": + err = unpopulate(val, "HardwareType", &f.HardwareType) + delete(rawMsg, key) + case "minimumCoreCount": + err = unpopulate(val, "MinimumCoreCount", &f.MinimumCoreCount) + delete(rawMsg, key) + case "runtimeMinimumCoreCount": + err = unpopulate(val, "RuntimeMinimumCoreCount", &f.RuntimeMinimumCoreCount) + delete(rawMsg, key) + case "shape": + err = unpopulate(val, "Shape", &f.Shape) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type GenerateAutonomousDatabaseWalletDetails. +func (g GenerateAutonomousDatabaseWalletDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "generateType", g.GenerateType) + populate(objectMap, "isRegional", g.IsRegional) + populate(objectMap, "password", g.Password) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type GenerateAutonomousDatabaseWalletDetails. +func (g *GenerateAutonomousDatabaseWalletDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "generateType": + err = unpopulate(val, "GenerateType", &g.GenerateType) + delete(rawMsg, key) + case "isRegional": + err = unpopulate(val, "IsRegional", &g.IsRegional) + delete(rawMsg, key) + case "password": + err = unpopulate(val, "Password", &g.Password) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type GiMinorVersion. +func (g GiMinorVersion) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", g.ID) + populate(objectMap, "name", g.Name) + populate(objectMap, "properties", g.Properties) + populate(objectMap, "systemData", g.SystemData) + populate(objectMap, "type", g.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type GiMinorVersion. +func (g *GiMinorVersion) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &g.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &g.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &g.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &g.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &g.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type GiMinorVersionListResult. +func (g GiMinorVersionListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", g.NextLink) + populate(objectMap, "value", g.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type GiMinorVersionListResult. +func (g *GiMinorVersionListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &g.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &g.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type GiMinorVersionProperties. +func (g GiMinorVersionProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "gridImageOcid", g.GridImageOcid) + populate(objectMap, "version", g.Version) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type GiMinorVersionProperties. +func (g *GiMinorVersionProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "gridImageOcid": + err = unpopulate(val, "GridImageOcid", &g.GridImageOcid) + delete(rawMsg, key) + case "version": + err = unpopulate(val, "Version", &g.Version) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type GiVersion. +func (g GiVersion) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", g.ID) + populate(objectMap, "name", g.Name) + populate(objectMap, "properties", g.Properties) + populate(objectMap, "systemData", g.SystemData) + populate(objectMap, "type", g.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type GiVersion. +func (g *GiVersion) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &g.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &g.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &g.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &g.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &g.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type GiVersionListResult. +func (g GiVersionListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", g.NextLink) + populate(objectMap, "value", g.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type GiVersionListResult. +func (g *GiVersionListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &g.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &g.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type GiVersionProperties. +func (g GiVersionProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "version", g.Version) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type GiVersionProperties. +func (g *GiVersionProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "version": + err = unpopulate(val, "Version", &g.Version) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", g, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type LongTermBackUpScheduleDetails. +func (l LongTermBackUpScheduleDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "isDisabled", l.IsDisabled) + populate(objectMap, "repeatCadence", l.RepeatCadence) + populate(objectMap, "retentionPeriodInDays", l.RetentionPeriodInDays) + populateDateTimeRFC3339(objectMap, "timeOfBackup", l.TimeOfBackup) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type LongTermBackUpScheduleDetails. +func (l *LongTermBackUpScheduleDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", l, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "isDisabled": + err = unpopulate(val, "IsDisabled", &l.IsDisabled) + delete(rawMsg, key) + case "repeatCadence": + err = unpopulate(val, "RepeatCadence", &l.RepeatCadence) + delete(rawMsg, key) + case "retentionPeriodInDays": + err = unpopulate(val, "RetentionPeriodInDays", &l.RetentionPeriodInDays) + delete(rawMsg, key) + case "timeOfBackup": + err = unpopulateDateTimeRFC3339(val, "TimeOfBackup", &l.TimeOfBackup) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", l, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type MaintenanceWindow. +func (m MaintenanceWindow) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "customActionTimeoutInMins", m.CustomActionTimeoutInMins) + populate(objectMap, "daysOfWeek", m.DaysOfWeek) + populate(objectMap, "hoursOfDay", m.HoursOfDay) + populate(objectMap, "isCustomActionTimeoutEnabled", m.IsCustomActionTimeoutEnabled) + populate(objectMap, "isMonthlyPatchingEnabled", m.IsMonthlyPatchingEnabled) + populate(objectMap, "leadTimeInWeeks", m.LeadTimeInWeeks) + populate(objectMap, "months", m.Months) + populate(objectMap, "patchingMode", m.PatchingMode) + populate(objectMap, "preference", m.Preference) + populate(objectMap, "weeksOfMonth", m.WeeksOfMonth) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type MaintenanceWindow. +func (m *MaintenanceWindow) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", m, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "customActionTimeoutInMins": + err = unpopulate(val, "CustomActionTimeoutInMins", &m.CustomActionTimeoutInMins) + delete(rawMsg, key) + case "daysOfWeek": + err = unpopulate(val, "DaysOfWeek", &m.DaysOfWeek) + delete(rawMsg, key) + case "hoursOfDay": + err = unpopulate(val, "HoursOfDay", &m.HoursOfDay) + delete(rawMsg, key) + case "isCustomActionTimeoutEnabled": + err = unpopulate(val, "IsCustomActionTimeoutEnabled", &m.IsCustomActionTimeoutEnabled) + delete(rawMsg, key) + case "isMonthlyPatchingEnabled": + err = unpopulate(val, "IsMonthlyPatchingEnabled", &m.IsMonthlyPatchingEnabled) + delete(rawMsg, key) + case "leadTimeInWeeks": + err = unpopulate(val, "LeadTimeInWeeks", &m.LeadTimeInWeeks) + delete(rawMsg, key) + case "months": + err = unpopulate(val, "Months", &m.Months) + delete(rawMsg, key) + case "patchingMode": + err = unpopulate(val, "PatchingMode", &m.PatchingMode) + delete(rawMsg, key) + case "preference": + err = unpopulate(val, "Preference", &m.Preference) + delete(rawMsg, key) + case "weeksOfMonth": + err = unpopulate(val, "WeeksOfMonth", &m.WeeksOfMonth) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", m, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type Month. +func (m Month) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "name", m.Name) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type Month. +func (m *Month) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", m, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "name": + err = unpopulate(val, "Name", &m.Name) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", m, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type NsgCidr. +func (n NsgCidr) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "destinationPortRange", n.DestinationPortRange) + populate(objectMap, "source", n.Source) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type NsgCidr. +func (n *NsgCidr) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", n, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "destinationPortRange": + err = unpopulate(val, "DestinationPortRange", &n.DestinationPortRange) + delete(rawMsg, key) + case "source": + err = unpopulate(val, "Source", &n.Source) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", n, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type Operation. +func (o Operation) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "actionType", o.ActionType) + populate(objectMap, "display", o.Display) + populate(objectMap, "isDataAction", o.IsDataAction) + populate(objectMap, "name", o.Name) + populate(objectMap, "origin", o.Origin) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type Operation. +func (o *Operation) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "actionType": + err = unpopulate(val, "ActionType", &o.ActionType) + delete(rawMsg, key) + case "display": + err = unpopulate(val, "Display", &o.Display) + delete(rawMsg, key) + case "isDataAction": + err = unpopulate(val, "IsDataAction", &o.IsDataAction) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &o.Name) + delete(rawMsg, key) + case "origin": + err = unpopulate(val, "Origin", &o.Origin) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type OperationDisplay. +func (o OperationDisplay) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "description", o.Description) + populate(objectMap, "operation", o.Operation) + populate(objectMap, "provider", o.Provider) + populate(objectMap, "resource", o.Resource) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type OperationDisplay. +func (o *OperationDisplay) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "description": + err = unpopulate(val, "Description", &o.Description) + delete(rawMsg, key) + case "operation": + err = unpopulate(val, "Operation", &o.Operation) + delete(rawMsg, key) + case "provider": + err = unpopulate(val, "Provider", &o.Provider) + delete(rawMsg, key) + case "resource": + err = unpopulate(val, "Resource", &o.Resource) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type OperationListResult. +func (o OperationListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", o.NextLink) + populate(objectMap, "value", o.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type OperationListResult. +func (o *OperationListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &o.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &o.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type OracleSubscription. +func (o OracleSubscription) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", o.ID) + populate(objectMap, "name", o.Name) + populate(objectMap, "plan", o.Plan) + populate(objectMap, "properties", o.Properties) + populate(objectMap, "systemData", o.SystemData) + populate(objectMap, "type", o.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type OracleSubscription. +func (o *OracleSubscription) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &o.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &o.Name) + delete(rawMsg, key) + case "plan": + err = unpopulate(val, "Plan", &o.Plan) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &o.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &o.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &o.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type OracleSubscriptionListResult. +func (o OracleSubscriptionListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", o.NextLink) + populate(objectMap, "value", o.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type OracleSubscriptionListResult. +func (o *OracleSubscriptionListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &o.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &o.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type OracleSubscriptionProperties. +func (o OracleSubscriptionProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "addSubscriptionOperationState", o.AddSubscriptionOperationState) + populate(objectMap, "azureSubscriptionIds", o.AzureSubscriptionIDs) + populate(objectMap, "cloudAccountId", o.CloudAccountID) + populate(objectMap, "cloudAccountState", o.CloudAccountState) + populate(objectMap, "intent", o.Intent) + populate(objectMap, "lastOperationStatusDetail", o.LastOperationStatusDetail) + populate(objectMap, "productCode", o.ProductCode) + populate(objectMap, "provisioningState", o.ProvisioningState) + populate(objectMap, "saasSubscriptionId", o.SaasSubscriptionID) + populate(objectMap, "termUnit", o.TermUnit) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type OracleSubscriptionProperties. +func (o *OracleSubscriptionProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "addSubscriptionOperationState": + err = unpopulate(val, "AddSubscriptionOperationState", &o.AddSubscriptionOperationState) + delete(rawMsg, key) + case "azureSubscriptionIds": + err = unpopulate(val, "AzureSubscriptionIDs", &o.AzureSubscriptionIDs) + delete(rawMsg, key) + case "cloudAccountId": + err = unpopulate(val, "CloudAccountID", &o.CloudAccountID) + delete(rawMsg, key) + case "cloudAccountState": + err = unpopulate(val, "CloudAccountState", &o.CloudAccountState) + delete(rawMsg, key) + case "intent": + err = unpopulate(val, "Intent", &o.Intent) + delete(rawMsg, key) + case "lastOperationStatusDetail": + err = unpopulate(val, "LastOperationStatusDetail", &o.LastOperationStatusDetail) + delete(rawMsg, key) + case "productCode": + err = unpopulate(val, "ProductCode", &o.ProductCode) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &o.ProvisioningState) + delete(rawMsg, key) + case "saasSubscriptionId": + err = unpopulate(val, "SaasSubscriptionID", &o.SaasSubscriptionID) + delete(rawMsg, key) + case "termUnit": + err = unpopulate(val, "TermUnit", &o.TermUnit) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type OracleSubscriptionUpdate. +func (o OracleSubscriptionUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "plan", o.Plan) + populate(objectMap, "properties", o.Properties) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type OracleSubscriptionUpdate. +func (o *OracleSubscriptionUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "plan": + err = unpopulate(val, "Plan", &o.Plan) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &o.Properties) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type OracleSubscriptionUpdateProperties. +func (o OracleSubscriptionUpdateProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "intent", o.Intent) + populate(objectMap, "productCode", o.ProductCode) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type OracleSubscriptionUpdateProperties. +func (o *OracleSubscriptionUpdateProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "intent": + err = unpopulate(val, "Intent", &o.Intent) + delete(rawMsg, key) + case "productCode": + err = unpopulate(val, "ProductCode", &o.ProductCode) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PeerDbDetails. +func (p PeerDbDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "peerDbId", p.PeerDbID) + populate(objectMap, "peerDbLocation", p.PeerDbLocation) + populate(objectMap, "peerDbOcid", p.PeerDbOcid) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PeerDbDetails. +func (p *PeerDbDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "peerDbId": + err = unpopulate(val, "PeerDbID", &p.PeerDbID) + delete(rawMsg, key) + case "peerDbLocation": + err = unpopulate(val, "PeerDbLocation", &p.PeerDbLocation) + delete(rawMsg, key) + case "peerDbOcid": + err = unpopulate(val, "PeerDbOcid", &p.PeerDbOcid) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type Plan. +func (p Plan) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "name", p.Name) + populate(objectMap, "product", p.Product) + populate(objectMap, "promotionCode", p.PromotionCode) + populate(objectMap, "publisher", p.Publisher) + populate(objectMap, "version", p.Version) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type Plan. +func (p *Plan) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "name": + err = unpopulate(val, "Name", &p.Name) + delete(rawMsg, key) + case "product": + err = unpopulate(val, "Product", &p.Product) + delete(rawMsg, key) + case "promotionCode": + err = unpopulate(val, "PromotionCode", &p.PromotionCode) + delete(rawMsg, key) + case "publisher": + err = unpopulate(val, "Publisher", &p.Publisher) + delete(rawMsg, key) + case "version": + err = unpopulate(val, "Version", &p.Version) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PlanUpdate. +func (p PlanUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "name", p.Name) + populate(objectMap, "product", p.Product) + populate(objectMap, "promotionCode", p.PromotionCode) + populate(objectMap, "publisher", p.Publisher) + populate(objectMap, "version", p.Version) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PlanUpdate. +func (p *PlanUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "name": + err = unpopulate(val, "Name", &p.Name) + delete(rawMsg, key) + case "product": + err = unpopulate(val, "Product", &p.Product) + delete(rawMsg, key) + case "promotionCode": + err = unpopulate(val, "PromotionCode", &p.PromotionCode) + delete(rawMsg, key) + case "publisher": + err = unpopulate(val, "Publisher", &p.Publisher) + delete(rawMsg, key) + case "version": + err = unpopulate(val, "Version", &p.Version) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PortRange. +func (p PortRange) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "max", p.Max) + populate(objectMap, "min", p.Min) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PortRange. +func (p *PortRange) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "max": + err = unpopulate(val, "Max", &p.Max) + delete(rawMsg, key) + case "min": + err = unpopulate(val, "Min", &p.Min) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PrivateIPAddressProperties. +func (p PrivateIPAddressProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "displayName", p.DisplayName) + populate(objectMap, "hostnameLabel", p.HostnameLabel) + populate(objectMap, "ipAddress", p.IPAddress) + populate(objectMap, "ocid", p.Ocid) + populate(objectMap, "subnetId", p.SubnetID) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateIPAddressProperties. +func (p *PrivateIPAddressProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "displayName": + err = unpopulate(val, "DisplayName", &p.DisplayName) + delete(rawMsg, key) + case "hostnameLabel": + err = unpopulate(val, "HostnameLabel", &p.HostnameLabel) + delete(rawMsg, key) + case "ipAddress": + err = unpopulate(val, "IPAddress", &p.IPAddress) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &p.Ocid) + delete(rawMsg, key) + case "subnetId": + err = unpopulate(val, "SubnetID", &p.SubnetID) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PrivateIPAddressesFilter. +func (p PrivateIPAddressesFilter) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "subnetId", p.SubnetID) + populate(objectMap, "vnicId", p.VnicID) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateIPAddressesFilter. +func (p *PrivateIPAddressesFilter) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "subnetId": + err = unpopulate(val, "SubnetID", &p.SubnetID) + delete(rawMsg, key) + case "vnicId": + err = unpopulate(val, "VnicID", &p.VnicID) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ProfileType. +func (p ProfileType) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "consumerGroup", p.ConsumerGroup) + populate(objectMap, "displayName", p.DisplayName) + populate(objectMap, "hostFormat", p.HostFormat) + populate(objectMap, "isRegional", p.IsRegional) + populate(objectMap, "protocol", p.Protocol) + populate(objectMap, "sessionMode", p.SessionMode) + populate(objectMap, "syntaxFormat", p.SyntaxFormat) + populate(objectMap, "tlsAuthentication", p.TLSAuthentication) + populate(objectMap, "value", p.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ProfileType. +func (p *ProfileType) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "consumerGroup": + err = unpopulate(val, "ConsumerGroup", &p.ConsumerGroup) + delete(rawMsg, key) + case "displayName": + err = unpopulate(val, "DisplayName", &p.DisplayName) + delete(rawMsg, key) + case "hostFormat": + err = unpopulate(val, "HostFormat", &p.HostFormat) + delete(rawMsg, key) + case "isRegional": + err = unpopulate(val, "IsRegional", &p.IsRegional) + delete(rawMsg, key) + case "protocol": + err = unpopulate(val, "Protocol", &p.Protocol) + delete(rawMsg, key) + case "sessionMode": + err = unpopulate(val, "SessionMode", &p.SessionMode) + delete(rawMsg, key) + case "syntaxFormat": + err = unpopulate(val, "SyntaxFormat", &p.SyntaxFormat) + delete(rawMsg, key) + case "tlsAuthentication": + err = unpopulate(val, "TLSAuthentication", &p.TLSAuthentication) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &p.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type RemoveVirtualMachineFromExadbVMClusterDetails. +func (r RemoveVirtualMachineFromExadbVMClusterDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "dbNodes", r.DbNodes) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type RemoveVirtualMachineFromExadbVMClusterDetails. +func (r *RemoveVirtualMachineFromExadbVMClusterDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", r, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "dbNodes": + err = unpopulate(val, "DbNodes", &r.DbNodes) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", r, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type RestoreAutonomousDatabaseDetails. +func (r RestoreAutonomousDatabaseDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populateDateTimeRFC3339(objectMap, "timestamp", r.Timestamp) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type RestoreAutonomousDatabaseDetails. +func (r *RestoreAutonomousDatabaseDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", r, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "timestamp": + err = unpopulateDateTimeRFC3339(val, "Timestamp", &r.Timestamp) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", r, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type SaasSubscriptionDetails. +func (s SaasSubscriptionDetails) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", s.ID) + populate(objectMap, "isAutoRenew", s.IsAutoRenew) + populate(objectMap, "isFreeTrial", s.IsFreeTrial) + populate(objectMap, "offerId", s.OfferID) + populate(objectMap, "planId", s.PlanID) + populate(objectMap, "publisherId", s.PublisherID) + populate(objectMap, "purchaserEmailId", s.PurchaserEmailID) + populate(objectMap, "purchaserTenantId", s.PurchaserTenantID) + populate(objectMap, "saasSubscriptionStatus", s.SaasSubscriptionStatus) + populate(objectMap, "subscriptionName", s.SubscriptionName) + populate(objectMap, "termUnit", s.TermUnit) + populateDateTimeRFC3339(objectMap, "timeCreated", s.TimeCreated) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type SaasSubscriptionDetails. +func (s *SaasSubscriptionDetails) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &s.ID) + delete(rawMsg, key) + case "isAutoRenew": + err = unpopulate(val, "IsAutoRenew", &s.IsAutoRenew) + delete(rawMsg, key) + case "isFreeTrial": + err = unpopulate(val, "IsFreeTrial", &s.IsFreeTrial) + delete(rawMsg, key) + case "offerId": + err = unpopulate(val, "OfferID", &s.OfferID) + delete(rawMsg, key) + case "planId": + err = unpopulate(val, "PlanID", &s.PlanID) + delete(rawMsg, key) + case "publisherId": + err = unpopulate(val, "PublisherID", &s.PublisherID) + delete(rawMsg, key) + case "purchaserEmailId": + err = unpopulate(val, "PurchaserEmailID", &s.PurchaserEmailID) + delete(rawMsg, key) + case "purchaserTenantId": + err = unpopulate(val, "PurchaserTenantID", &s.PurchaserTenantID) + delete(rawMsg, key) + case "saasSubscriptionStatus": + err = unpopulate(val, "SaasSubscriptionStatus", &s.SaasSubscriptionStatus) + delete(rawMsg, key) + case "subscriptionName": + err = unpopulate(val, "SubscriptionName", &s.SubscriptionName) + delete(rawMsg, key) + case "termUnit": + err = unpopulate(val, "TermUnit", &s.TermUnit) + delete(rawMsg, key) + case "timeCreated": + err = unpopulateDateTimeRFC3339(val, "TimeCreated", &s.TimeCreated) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ScheduledOperationsType. +func (s ScheduledOperationsType) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "dayOfWeek", s.DayOfWeek) + populate(objectMap, "scheduledStartTime", s.ScheduledStartTime) + populate(objectMap, "scheduledStopTime", s.ScheduledStopTime) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ScheduledOperationsType. +func (s *ScheduledOperationsType) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "dayOfWeek": + err = unpopulate(val, "DayOfWeek", &s.DayOfWeek) + delete(rawMsg, key) + case "scheduledStartTime": + err = unpopulate(val, "ScheduledStartTime", &s.ScheduledStartTime) + delete(rawMsg, key) + case "scheduledStopTime": + err = unpopulate(val, "ScheduledStopTime", &s.ScheduledStopTime) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ScheduledOperationsTypeUpdate. +func (s ScheduledOperationsTypeUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "dayOfWeek", s.DayOfWeek) + populate(objectMap, "scheduledStartTime", s.ScheduledStartTime) + populate(objectMap, "scheduledStopTime", s.ScheduledStopTime) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ScheduledOperationsTypeUpdate. +func (s *ScheduledOperationsTypeUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "dayOfWeek": + err = unpopulate(val, "DayOfWeek", &s.DayOfWeek) + delete(rawMsg, key) + case "scheduledStartTime": + err = unpopulate(val, "ScheduledStartTime", &s.ScheduledStartTime) + delete(rawMsg, key) + case "scheduledStopTime": + err = unpopulate(val, "ScheduledStopTime", &s.ScheduledStopTime) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type SystemData. +func (s SystemData) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populateDateTimeRFC3339(objectMap, "createdAt", s.CreatedAt) + populate(objectMap, "createdBy", s.CreatedBy) + populate(objectMap, "createdByType", s.CreatedByType) + populateDateTimeRFC3339(objectMap, "lastModifiedAt", s.LastModifiedAt) + populate(objectMap, "lastModifiedBy", s.LastModifiedBy) + populate(objectMap, "lastModifiedByType", s.LastModifiedByType) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type SystemData. +func (s *SystemData) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "createdAt": + err = unpopulateDateTimeRFC3339(val, "CreatedAt", &s.CreatedAt) + delete(rawMsg, key) + case "createdBy": + err = unpopulate(val, "CreatedBy", &s.CreatedBy) + delete(rawMsg, key) + case "createdByType": + err = unpopulate(val, "CreatedByType", &s.CreatedByType) + delete(rawMsg, key) + case "lastModifiedAt": + err = unpopulateDateTimeRFC3339(val, "LastModifiedAt", &s.LastModifiedAt) + delete(rawMsg, key) + case "lastModifiedBy": + err = unpopulate(val, "LastModifiedBy", &s.LastModifiedBy) + delete(rawMsg, key) + case "lastModifiedByType": + err = unpopulate(val, "LastModifiedByType", &s.LastModifiedByType) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type SystemVersion. +func (s SystemVersion) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", s.ID) + populate(objectMap, "name", s.Name) + populate(objectMap, "properties", s.Properties) + populate(objectMap, "systemData", s.SystemData) + populate(objectMap, "type", s.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type SystemVersion. +func (s *SystemVersion) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &s.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &s.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &s.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &s.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &s.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type SystemVersionListResult. +func (s SystemVersionListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", s.NextLink) + populate(objectMap, "value", s.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type SystemVersionListResult. +func (s *SystemVersionListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &s.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &s.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type SystemVersionProperties. +func (s SystemVersionProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "systemVersion", s.SystemVersion) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type SystemVersionProperties. +func (s *SystemVersionProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "systemVersion": + err = unpopulate(val, "SystemVersion", &s.SystemVersion) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type VirtualNetworkAddress. +func (v VirtualNetworkAddress) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", v.ID) + populate(objectMap, "name", v.Name) + populate(objectMap, "properties", v.Properties) + populate(objectMap, "systemData", v.SystemData) + populate(objectMap, "type", v.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkAddress. +func (v *VirtualNetworkAddress) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", v, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &v.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &v.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &v.Properties) + delete(rawMsg, key) + case "systemData": + err = unpopulate(val, "SystemData", &v.SystemData) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &v.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", v, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type VirtualNetworkAddressListResult. +func (v VirtualNetworkAddressListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", v.NextLink) + populate(objectMap, "value", v.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkAddressListResult. +func (v *VirtualNetworkAddressListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", v, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &v.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &v.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", v, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type VirtualNetworkAddressProperties. +func (v VirtualNetworkAddressProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "domain", v.Domain) + populate(objectMap, "ipAddress", v.IPAddress) + populate(objectMap, "lifecycleDetails", v.LifecycleDetails) + populate(objectMap, "lifecycleState", v.LifecycleState) + populate(objectMap, "ocid", v.Ocid) + populate(objectMap, "provisioningState", v.ProvisioningState) + populateDateTimeRFC3339(objectMap, "timeAssigned", v.TimeAssigned) + populate(objectMap, "vmOcid", v.VMOcid) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type VirtualNetworkAddressProperties. +func (v *VirtualNetworkAddressProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", v, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "domain": + err = unpopulate(val, "Domain", &v.Domain) + delete(rawMsg, key) + case "ipAddress": + err = unpopulate(val, "IPAddress", &v.IPAddress) + delete(rawMsg, key) + case "lifecycleDetails": + err = unpopulate(val, "LifecycleDetails", &v.LifecycleDetails) + delete(rawMsg, key) + case "lifecycleState": + err = unpopulate(val, "LifecycleState", &v.LifecycleState) + delete(rawMsg, key) + case "ocid": + err = unpopulate(val, "Ocid", &v.Ocid) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &v.ProvisioningState) + delete(rawMsg, key) + case "timeAssigned": + err = unpopulateDateTimeRFC3339(val, "TimeAssigned", &v.TimeAssigned) + delete(rawMsg, key) + case "vmOcid": + err = unpopulate(val, "VMOcid", &v.VMOcid) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", v, err) + } + } + return nil +} + +func populate(m map[string]any, k string, v any) { + if v == nil { + return + } else if azcore.IsNullValue(v) { + m[k] = nil + } else if !reflect.ValueOf(v).IsNil() { + m[k] = v + } +} + +func unpopulate(data json.RawMessage, fn string, v any) error { + if data == nil || string(data) == "null" { + return nil + } + if err := json.Unmarshal(data, v); err != nil { + return fmt.Errorf("struct field %s: %v", fn, err) + } + return nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/operations_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/operations_client.go new file mode 100644 index 00000000..4f9d7545 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/operations_client.go @@ -0,0 +1,84 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" +) + +// OperationsClient contains the methods for the Operations group. +// Don't use this type directly, use NewOperationsClient() instead. +type OperationsClient struct { + internal *arm.Client +} + +// NewOperationsClient creates a new instance of OperationsClient with the specified values. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewOperationsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*OperationsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &OperationsClient{ + internal: cl, + } + return client, nil +} + +// NewListPager - List the operations for the provider +// +// Generated from API version 2025-03-01 +// - options - OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method. +func (client *OperationsClient) NewListPager(options *OperationsClientListOptions) *runtime.Pager[OperationsClientListResponse] { + return runtime.NewPager(runtime.PagingHandler[OperationsClientListResponse]{ + More: func(page OperationsClientListResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *OperationsClientListResponse) (OperationsClientListResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "OperationsClient.NewListPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listCreateRequest(ctx, options) + }, nil) + if err != nil { + return OperationsClientListResponse{}, err + } + return client.listHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listCreateRequest creates the List request. +func (client *OperationsClient) listCreateRequest(ctx context.Context, _ *OperationsClientListOptions) (*policy.Request, error) { + urlPath := "/providers/Oracle.Database/operations" + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listHandleResponse handles the List response. +func (client *OperationsClient) listHandleResponse(resp *http.Response) (OperationsClientListResponse, error) { + result := OperationsClientListResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.OperationListResult); err != nil { + return OperationsClientListResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/options.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/options.go new file mode 100644 index 00000000..975828de --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/options.go @@ -0,0 +1,557 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +// AutonomousDatabaseBackupsClientBeginCreateOrUpdateOptions contains the optional parameters for the AutonomousDatabaseBackupsClient.BeginCreateOrUpdate +// method. +type AutonomousDatabaseBackupsClientBeginCreateOrUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabaseBackupsClientBeginDeleteOptions contains the optional parameters for the AutonomousDatabaseBackupsClient.BeginDelete +// method. +type AutonomousDatabaseBackupsClientBeginDeleteOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabaseBackupsClientBeginUpdateOptions contains the optional parameters for the AutonomousDatabaseBackupsClient.BeginUpdate +// method. +type AutonomousDatabaseBackupsClientBeginUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabaseBackupsClientGetOptions contains the optional parameters for the AutonomousDatabaseBackupsClient.Get +// method. +type AutonomousDatabaseBackupsClientGetOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabaseBackupsClientListByAutonomousDatabaseOptions contains the optional parameters for the AutonomousDatabaseBackupsClient.NewListByAutonomousDatabasePager +// method. +type AutonomousDatabaseBackupsClientListByAutonomousDatabaseOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabaseCharacterSetsClientGetOptions contains the optional parameters for the AutonomousDatabaseCharacterSetsClient.Get +// method. +type AutonomousDatabaseCharacterSetsClientGetOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabaseCharacterSetsClientListByLocationOptions contains the optional parameters for the AutonomousDatabaseCharacterSetsClient.NewListByLocationPager +// method. +type AutonomousDatabaseCharacterSetsClientListByLocationOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabaseNationalCharacterSetsClientGetOptions contains the optional parameters for the AutonomousDatabaseNationalCharacterSetsClient.Get +// method. +type AutonomousDatabaseNationalCharacterSetsClientGetOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabaseNationalCharacterSetsClientListByLocationOptions contains the optional parameters for the AutonomousDatabaseNationalCharacterSetsClient.NewListByLocationPager +// method. +type AutonomousDatabaseNationalCharacterSetsClientListByLocationOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabaseVersionsClientGetOptions contains the optional parameters for the AutonomousDatabaseVersionsClient.Get +// method. +type AutonomousDatabaseVersionsClientGetOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabaseVersionsClientListByLocationOptions contains the optional parameters for the AutonomousDatabaseVersionsClient.NewListByLocationPager +// method. +type AutonomousDatabaseVersionsClientListByLocationOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabasesClientBeginChangeDisasterRecoveryConfigurationOptions contains the optional parameters for the AutonomousDatabasesClient.BeginChangeDisasterRecoveryConfiguration +// method. +type AutonomousDatabasesClientBeginChangeDisasterRecoveryConfigurationOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabasesClientBeginCreateOrUpdateOptions contains the optional parameters for the AutonomousDatabasesClient.BeginCreateOrUpdate +// method. +type AutonomousDatabasesClientBeginCreateOrUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabasesClientBeginDeleteOptions contains the optional parameters for the AutonomousDatabasesClient.BeginDelete +// method. +type AutonomousDatabasesClientBeginDeleteOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabasesClientBeginFailoverOptions contains the optional parameters for the AutonomousDatabasesClient.BeginFailover +// method. +type AutonomousDatabasesClientBeginFailoverOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabasesClientBeginRestoreOptions contains the optional parameters for the AutonomousDatabasesClient.BeginRestore +// method. +type AutonomousDatabasesClientBeginRestoreOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabasesClientBeginShrinkOptions contains the optional parameters for the AutonomousDatabasesClient.BeginShrink +// method. +type AutonomousDatabasesClientBeginShrinkOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabasesClientBeginSwitchoverOptions contains the optional parameters for the AutonomousDatabasesClient.BeginSwitchover +// method. +type AutonomousDatabasesClientBeginSwitchoverOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabasesClientBeginUpdateOptions contains the optional parameters for the AutonomousDatabasesClient.BeginUpdate +// method. +type AutonomousDatabasesClientBeginUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// AutonomousDatabasesClientGenerateWalletOptions contains the optional parameters for the AutonomousDatabasesClient.GenerateWallet +// method. +type AutonomousDatabasesClientGenerateWalletOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabasesClientGetOptions contains the optional parameters for the AutonomousDatabasesClient.Get method. +type AutonomousDatabasesClientGetOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabasesClientListByResourceGroupOptions contains the optional parameters for the AutonomousDatabasesClient.NewListByResourceGroupPager +// method. +type AutonomousDatabasesClientListByResourceGroupOptions struct { + // placeholder for future optional parameters +} + +// AutonomousDatabasesClientListBySubscriptionOptions contains the optional parameters for the AutonomousDatabasesClient.NewListBySubscriptionPager +// method. +type AutonomousDatabasesClientListBySubscriptionOptions struct { + // placeholder for future optional parameters +} + +// CloudExadataInfrastructuresClientBeginAddStorageCapacityOptions contains the optional parameters for the CloudExadataInfrastructuresClient.BeginAddStorageCapacity +// method. +type CloudExadataInfrastructuresClientBeginAddStorageCapacityOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// CloudExadataInfrastructuresClientBeginCreateOrUpdateOptions contains the optional parameters for the CloudExadataInfrastructuresClient.BeginCreateOrUpdate +// method. +type CloudExadataInfrastructuresClientBeginCreateOrUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// CloudExadataInfrastructuresClientBeginDeleteOptions contains the optional parameters for the CloudExadataInfrastructuresClient.BeginDelete +// method. +type CloudExadataInfrastructuresClientBeginDeleteOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// CloudExadataInfrastructuresClientBeginUpdateOptions contains the optional parameters for the CloudExadataInfrastructuresClient.BeginUpdate +// method. +type CloudExadataInfrastructuresClientBeginUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// CloudExadataInfrastructuresClientGetOptions contains the optional parameters for the CloudExadataInfrastructuresClient.Get +// method. +type CloudExadataInfrastructuresClientGetOptions struct { + // placeholder for future optional parameters +} + +// CloudExadataInfrastructuresClientListByResourceGroupOptions contains the optional parameters for the CloudExadataInfrastructuresClient.NewListByResourceGroupPager +// method. +type CloudExadataInfrastructuresClientListByResourceGroupOptions struct { + // placeholder for future optional parameters +} + +// CloudExadataInfrastructuresClientListBySubscriptionOptions contains the optional parameters for the CloudExadataInfrastructuresClient.NewListBySubscriptionPager +// method. +type CloudExadataInfrastructuresClientListBySubscriptionOptions struct { + // placeholder for future optional parameters +} + +// CloudVMClustersClientBeginAddVMsOptions contains the optional parameters for the CloudVMClustersClient.BeginAddVMs method. +type CloudVMClustersClientBeginAddVMsOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// CloudVMClustersClientBeginCreateOrUpdateOptions contains the optional parameters for the CloudVMClustersClient.BeginCreateOrUpdate +// method. +type CloudVMClustersClientBeginCreateOrUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// CloudVMClustersClientBeginDeleteOptions contains the optional parameters for the CloudVMClustersClient.BeginDelete method. +type CloudVMClustersClientBeginDeleteOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// CloudVMClustersClientBeginRemoveVMsOptions contains the optional parameters for the CloudVMClustersClient.BeginRemoveVMs +// method. +type CloudVMClustersClientBeginRemoveVMsOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// CloudVMClustersClientBeginUpdateOptions contains the optional parameters for the CloudVMClustersClient.BeginUpdate method. +type CloudVMClustersClientBeginUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// CloudVMClustersClientGetOptions contains the optional parameters for the CloudVMClustersClient.Get method. +type CloudVMClustersClientGetOptions struct { + // placeholder for future optional parameters +} + +// CloudVMClustersClientListByResourceGroupOptions contains the optional parameters for the CloudVMClustersClient.NewListByResourceGroupPager +// method. +type CloudVMClustersClientListByResourceGroupOptions struct { + // placeholder for future optional parameters +} + +// CloudVMClustersClientListBySubscriptionOptions contains the optional parameters for the CloudVMClustersClient.NewListBySubscriptionPager +// method. +type CloudVMClustersClientListBySubscriptionOptions struct { + // placeholder for future optional parameters +} + +// CloudVMClustersClientListPrivateIPAddressesOptions contains the optional parameters for the CloudVMClustersClient.ListPrivateIPAddresses +// method. +type CloudVMClustersClientListPrivateIPAddressesOptions struct { + // placeholder for future optional parameters +} + +// DNSPrivateViewsClientGetOptions contains the optional parameters for the DNSPrivateViewsClient.Get method. +type DNSPrivateViewsClientGetOptions struct { + // placeholder for future optional parameters +} + +// DNSPrivateViewsClientListByLocationOptions contains the optional parameters for the DNSPrivateViewsClient.NewListByLocationPager +// method. +type DNSPrivateViewsClientListByLocationOptions struct { + // placeholder for future optional parameters +} + +// DNSPrivateZonesClientGetOptions contains the optional parameters for the DNSPrivateZonesClient.Get method. +type DNSPrivateZonesClientGetOptions struct { + // placeholder for future optional parameters +} + +// DNSPrivateZonesClientListByLocationOptions contains the optional parameters for the DNSPrivateZonesClient.NewListByLocationPager +// method. +type DNSPrivateZonesClientListByLocationOptions struct { + // placeholder for future optional parameters +} + +// DbNodesClientBeginActionOptions contains the optional parameters for the DbNodesClient.BeginAction method. +type DbNodesClientBeginActionOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// DbNodesClientGetOptions contains the optional parameters for the DbNodesClient.Get method. +type DbNodesClientGetOptions struct { + // placeholder for future optional parameters +} + +// DbNodesClientListByCloudVMClusterOptions contains the optional parameters for the DbNodesClient.NewListByCloudVMClusterPager +// method. +type DbNodesClientListByCloudVMClusterOptions struct { + // placeholder for future optional parameters +} + +// DbServersClientGetOptions contains the optional parameters for the DbServersClient.Get method. +type DbServersClientGetOptions struct { + // placeholder for future optional parameters +} + +// DbServersClientListByCloudExadataInfrastructureOptions contains the optional parameters for the DbServersClient.NewListByCloudExadataInfrastructurePager +// method. +type DbServersClientListByCloudExadataInfrastructureOptions struct { + // placeholder for future optional parameters +} + +// DbSystemShapesClientGetOptions contains the optional parameters for the DbSystemShapesClient.Get method. +type DbSystemShapesClientGetOptions struct { + // placeholder for future optional parameters +} + +// DbSystemShapesClientListByLocationOptions contains the optional parameters for the DbSystemShapesClient.NewListByLocationPager +// method. +type DbSystemShapesClientListByLocationOptions struct { + // Filters the result for the given Azure Availability Zone + Zone *string +} + +// ExadbVMClustersClientBeginCreateOrUpdateOptions contains the optional parameters for the ExadbVMClustersClient.BeginCreateOrUpdate +// method. +type ExadbVMClustersClientBeginCreateOrUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// ExadbVMClustersClientBeginDeleteOptions contains the optional parameters for the ExadbVMClustersClient.BeginDelete method. +type ExadbVMClustersClientBeginDeleteOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// ExadbVMClustersClientBeginRemoveVMsOptions contains the optional parameters for the ExadbVMClustersClient.BeginRemoveVMs +// method. +type ExadbVMClustersClientBeginRemoveVMsOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// ExadbVMClustersClientBeginUpdateOptions contains the optional parameters for the ExadbVMClustersClient.BeginUpdate method. +type ExadbVMClustersClientBeginUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// ExadbVMClustersClientGetOptions contains the optional parameters for the ExadbVMClustersClient.Get method. +type ExadbVMClustersClientGetOptions struct { + // placeholder for future optional parameters +} + +// ExadbVMClustersClientListByResourceGroupOptions contains the optional parameters for the ExadbVMClustersClient.NewListByResourceGroupPager +// method. +type ExadbVMClustersClientListByResourceGroupOptions struct { + // placeholder for future optional parameters +} + +// ExadbVMClustersClientListBySubscriptionOptions contains the optional parameters for the ExadbVMClustersClient.NewListBySubscriptionPager +// method. +type ExadbVMClustersClientListBySubscriptionOptions struct { + // placeholder for future optional parameters +} + +// ExascaleDbNodesClientBeginActionOptions contains the optional parameters for the ExascaleDbNodesClient.BeginAction method. +type ExascaleDbNodesClientBeginActionOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// ExascaleDbNodesClientGetOptions contains the optional parameters for the ExascaleDbNodesClient.Get method. +type ExascaleDbNodesClientGetOptions struct { + // placeholder for future optional parameters +} + +// ExascaleDbNodesClientListByParentOptions contains the optional parameters for the ExascaleDbNodesClient.NewListByParentPager +// method. +type ExascaleDbNodesClientListByParentOptions struct { + // placeholder for future optional parameters +} + +// ExascaleDbStorageVaultsClientBeginCreateOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.BeginCreate +// method. +type ExascaleDbStorageVaultsClientBeginCreateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// ExascaleDbStorageVaultsClientBeginDeleteOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.BeginDelete +// method. +type ExascaleDbStorageVaultsClientBeginDeleteOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// ExascaleDbStorageVaultsClientBeginUpdateOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.BeginUpdate +// method. +type ExascaleDbStorageVaultsClientBeginUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// ExascaleDbStorageVaultsClientGetOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.Get method. +type ExascaleDbStorageVaultsClientGetOptions struct { + // placeholder for future optional parameters +} + +// ExascaleDbStorageVaultsClientListByResourceGroupOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.NewListByResourceGroupPager +// method. +type ExascaleDbStorageVaultsClientListByResourceGroupOptions struct { + // placeholder for future optional parameters +} + +// ExascaleDbStorageVaultsClientListBySubscriptionOptions contains the optional parameters for the ExascaleDbStorageVaultsClient.NewListBySubscriptionPager +// method. +type ExascaleDbStorageVaultsClientListBySubscriptionOptions struct { + // placeholder for future optional parameters +} + +// FlexComponentsClientGetOptions contains the optional parameters for the FlexComponentsClient.Get method. +type FlexComponentsClientGetOptions struct { + // placeholder for future optional parameters +} + +// FlexComponentsClientListByParentOptions contains the optional parameters for the FlexComponentsClient.NewListByParentPager +// method. +type FlexComponentsClientListByParentOptions struct { + // If provided, filters the results for the given shape + Shape *SystemShapes +} + +// GiMinorVersionsClientGetOptions contains the optional parameters for the GiMinorVersionsClient.Get method. +type GiMinorVersionsClientGetOptions struct { + // placeholder for future optional parameters +} + +// GiMinorVersionsClientListByParentOptions contains the optional parameters for the GiMinorVersionsClient.NewListByParentPager +// method. +type GiMinorVersionsClientListByParentOptions struct { + // If provided, filters the results to the set of database versions which are supported for the given shape family. + ShapeFamily *ShapeFamily + + // Filters the result for the given Azure Availability Zone + Zone *string +} + +// GiVersionsClientGetOptions contains the optional parameters for the GiVersionsClient.Get method. +type GiVersionsClientGetOptions struct { + // placeholder for future optional parameters +} + +// GiVersionsClientListByLocationOptions contains the optional parameters for the GiVersionsClient.NewListByLocationPager +// method. +type GiVersionsClientListByLocationOptions struct { + // If provided, filters the results for the given shape + Shape *SystemShapes + + // Filters the result for the given Azure Availability Zone + Zone *string +} + +// OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method. +type OperationsClientListOptions struct { + // placeholder for future optional parameters +} + +// OracleSubscriptionsClientBeginAddAzureSubscriptionsOptions contains the optional parameters for the OracleSubscriptionsClient.BeginAddAzureSubscriptions +// method. +type OracleSubscriptionsClientBeginAddAzureSubscriptionsOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// OracleSubscriptionsClientBeginCreateOrUpdateOptions contains the optional parameters for the OracleSubscriptionsClient.BeginCreateOrUpdate +// method. +type OracleSubscriptionsClientBeginCreateOrUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// OracleSubscriptionsClientBeginDeleteOptions contains the optional parameters for the OracleSubscriptionsClient.BeginDelete +// method. +type OracleSubscriptionsClientBeginDeleteOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// OracleSubscriptionsClientBeginListActivationLinksOptions contains the optional parameters for the OracleSubscriptionsClient.BeginListActivationLinks +// method. +type OracleSubscriptionsClientBeginListActivationLinksOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// OracleSubscriptionsClientBeginListCloudAccountDetailsOptions contains the optional parameters for the OracleSubscriptionsClient.BeginListCloudAccountDetails +// method. +type OracleSubscriptionsClientBeginListCloudAccountDetailsOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// OracleSubscriptionsClientBeginListSaasSubscriptionDetailsOptions contains the optional parameters for the OracleSubscriptionsClient.BeginListSaasSubscriptionDetails +// method. +type OracleSubscriptionsClientBeginListSaasSubscriptionDetailsOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// OracleSubscriptionsClientBeginUpdateOptions contains the optional parameters for the OracleSubscriptionsClient.BeginUpdate +// method. +type OracleSubscriptionsClientBeginUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// OracleSubscriptionsClientGetOptions contains the optional parameters for the OracleSubscriptionsClient.Get method. +type OracleSubscriptionsClientGetOptions struct { + // placeholder for future optional parameters +} + +// OracleSubscriptionsClientListBySubscriptionOptions contains the optional parameters for the OracleSubscriptionsClient.NewListBySubscriptionPager +// method. +type OracleSubscriptionsClientListBySubscriptionOptions struct { + // placeholder for future optional parameters +} + +// SystemVersionsClientGetOptions contains the optional parameters for the SystemVersionsClient.Get method. +type SystemVersionsClientGetOptions struct { + // placeholder for future optional parameters +} + +// SystemVersionsClientListByLocationOptions contains the optional parameters for the SystemVersionsClient.NewListByLocationPager +// method. +type SystemVersionsClientListByLocationOptions struct { + // placeholder for future optional parameters +} + +// VirtualNetworkAddressesClientBeginCreateOrUpdateOptions contains the optional parameters for the VirtualNetworkAddressesClient.BeginCreateOrUpdate +// method. +type VirtualNetworkAddressesClientBeginCreateOrUpdateOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// VirtualNetworkAddressesClientBeginDeleteOptions contains the optional parameters for the VirtualNetworkAddressesClient.BeginDelete +// method. +type VirtualNetworkAddressesClientBeginDeleteOptions struct { + // Resumes the long-running operation from the provided token. + ResumeToken string +} + +// VirtualNetworkAddressesClientGetOptions contains the optional parameters for the VirtualNetworkAddressesClient.Get method. +type VirtualNetworkAddressesClientGetOptions struct { + // placeholder for future optional parameters +} + +// VirtualNetworkAddressesClientListByCloudVMClusterOptions contains the optional parameters for the VirtualNetworkAddressesClient.NewListByCloudVMClusterPager +// method. +type VirtualNetworkAddressesClientListByCloudVMClusterOptions struct { + // placeholder for future optional parameters +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/oraclesubscriptions_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/oraclesubscriptions_client.go new file mode 100644 index 00000000..8429819c --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/oraclesubscriptions_client.go @@ -0,0 +1,626 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// OracleSubscriptionsClient contains the methods for the OracleSubscriptions group. +// Don't use this type directly, use NewOracleSubscriptionsClient() instead. +type OracleSubscriptionsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewOracleSubscriptionsClient creates a new instance of OracleSubscriptionsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewOracleSubscriptionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*OracleSubscriptionsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &OracleSubscriptionsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginAddAzureSubscriptions - Add Azure Subscriptions +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - body - The content of the action request +// - options - OracleSubscriptionsClientBeginAddAzureSubscriptionsOptions contains the optional parameters for the OracleSubscriptionsClient.BeginAddAzureSubscriptions +// method. +func (client *OracleSubscriptionsClient) BeginAddAzureSubscriptions(ctx context.Context, body AzureSubscriptions, options *OracleSubscriptionsClientBeginAddAzureSubscriptionsOptions) (*runtime.Poller[OracleSubscriptionsClientAddAzureSubscriptionsResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.addAzureSubscriptions(ctx, body, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[OracleSubscriptionsClientAddAzureSubscriptionsResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[OracleSubscriptionsClientAddAzureSubscriptionsResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// AddAzureSubscriptions - Add Azure Subscriptions +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *OracleSubscriptionsClient) addAzureSubscriptions(ctx context.Context, body AzureSubscriptions, options *OracleSubscriptionsClientBeginAddAzureSubscriptionsOptions) (*http.Response, error) { + var err error + const operationName = "OracleSubscriptionsClient.BeginAddAzureSubscriptions" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.addAzureSubscriptionsCreateRequest(ctx, body, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// addAzureSubscriptionsCreateRequest creates the AddAzureSubscriptions request. +func (client *OracleSubscriptionsClient) addAzureSubscriptionsCreateRequest(ctx context.Context, body AzureSubscriptions, _ *OracleSubscriptionsClientBeginAddAzureSubscriptionsOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions/default/addAzureSubscriptions" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, body); err != nil { + return nil, err + } + return req, nil +} + +// BeginCreateOrUpdate - Create a OracleSubscription +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resource - Resource create parameters. +// - options - OracleSubscriptionsClientBeginCreateOrUpdateOptions contains the optional parameters for the OracleSubscriptionsClient.BeginCreateOrUpdate +// method. +func (client *OracleSubscriptionsClient) BeginCreateOrUpdate(ctx context.Context, resource OracleSubscription, options *OracleSubscriptionsClientBeginCreateOrUpdateOptions) (*runtime.Poller[OracleSubscriptionsClientCreateOrUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.createOrUpdate(ctx, resource, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[OracleSubscriptionsClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[OracleSubscriptionsClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// CreateOrUpdate - Create a OracleSubscription +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *OracleSubscriptionsClient) createOrUpdate(ctx context.Context, resource OracleSubscription, options *OracleSubscriptionsClientBeginCreateOrUpdateOptions) (*http.Response, error) { + var err error + const operationName = "OracleSubscriptionsClient.BeginCreateOrUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.createOrUpdateCreateRequest(ctx, resource, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// createOrUpdateCreateRequest creates the CreateOrUpdate request. +func (client *OracleSubscriptionsClient) createOrUpdateCreateRequest(ctx context.Context, resource OracleSubscription, _ *OracleSubscriptionsClientBeginCreateOrUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions/default" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, resource); err != nil { + return nil, err + } + return req, nil +} + +// BeginDelete - Delete a OracleSubscription +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - options - OracleSubscriptionsClientBeginDeleteOptions contains the optional parameters for the OracleSubscriptionsClient.BeginDelete +// method. +func (client *OracleSubscriptionsClient) BeginDelete(ctx context.Context, options *OracleSubscriptionsClientBeginDeleteOptions) (*runtime.Poller[OracleSubscriptionsClientDeleteResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.deleteOperation(ctx, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[OracleSubscriptionsClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[OracleSubscriptionsClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Delete - Delete a OracleSubscription +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *OracleSubscriptionsClient) deleteOperation(ctx context.Context, options *OracleSubscriptionsClientBeginDeleteOptions) (*http.Response, error) { + var err error + const operationName = "OracleSubscriptionsClient.BeginDelete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusAccepted, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *OracleSubscriptionsClient) deleteCreateRequest(ctx context.Context, _ *OracleSubscriptionsClientBeginDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions/default" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// Get - Get a OracleSubscription +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - options - OracleSubscriptionsClientGetOptions contains the optional parameters for the OracleSubscriptionsClient.Get method. +func (client *OracleSubscriptionsClient) Get(ctx context.Context, options *OracleSubscriptionsClientGetOptions) (OracleSubscriptionsClientGetResponse, error) { + var err error + const operationName = "OracleSubscriptionsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, options) + if err != nil { + return OracleSubscriptionsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return OracleSubscriptionsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return OracleSubscriptionsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *OracleSubscriptionsClient) getCreateRequest(ctx context.Context, _ *OracleSubscriptionsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions/default" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *OracleSubscriptionsClient) getHandleResponse(resp *http.Response) (OracleSubscriptionsClientGetResponse, error) { + result := OracleSubscriptionsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.OracleSubscription); err != nil { + return OracleSubscriptionsClientGetResponse{}, err + } + return result, nil +} + +// BeginListActivationLinks - List Activation Links +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - options - OracleSubscriptionsClientBeginListActivationLinksOptions contains the optional parameters for the OracleSubscriptionsClient.BeginListActivationLinks +// method. +func (client *OracleSubscriptionsClient) BeginListActivationLinks(ctx context.Context, options *OracleSubscriptionsClientBeginListActivationLinksOptions) (*runtime.Poller[OracleSubscriptionsClientListActivationLinksResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.listActivationLinks(ctx, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[OracleSubscriptionsClientListActivationLinksResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[OracleSubscriptionsClientListActivationLinksResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// ListActivationLinks - List Activation Links +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *OracleSubscriptionsClient) listActivationLinks(ctx context.Context, options *OracleSubscriptionsClientBeginListActivationLinksOptions) (*http.Response, error) { + var err error + const operationName = "OracleSubscriptionsClient.BeginListActivationLinks" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.listActivationLinksCreateRequest(ctx, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// listActivationLinksCreateRequest creates the ListActivationLinks request. +func (client *OracleSubscriptionsClient) listActivationLinksCreateRequest(ctx context.Context, _ *OracleSubscriptionsClientBeginListActivationLinksOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions/default/listActivationLinks" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// NewListBySubscriptionPager - List OracleSubscription resources by subscription ID +// +// Generated from API version 2025-03-01 +// - options - OracleSubscriptionsClientListBySubscriptionOptions contains the optional parameters for the OracleSubscriptionsClient.NewListBySubscriptionPager +// method. +func (client *OracleSubscriptionsClient) NewListBySubscriptionPager(options *OracleSubscriptionsClientListBySubscriptionOptions) *runtime.Pager[OracleSubscriptionsClientListBySubscriptionResponse] { + return runtime.NewPager(runtime.PagingHandler[OracleSubscriptionsClientListBySubscriptionResponse]{ + More: func(page OracleSubscriptionsClientListBySubscriptionResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *OracleSubscriptionsClientListBySubscriptionResponse) (OracleSubscriptionsClientListBySubscriptionResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "OracleSubscriptionsClient.NewListBySubscriptionPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listBySubscriptionCreateRequest(ctx, options) + }, nil) + if err != nil { + return OracleSubscriptionsClientListBySubscriptionResponse{}, err + } + return client.listBySubscriptionHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listBySubscriptionCreateRequest creates the ListBySubscription request. +func (client *OracleSubscriptionsClient) listBySubscriptionCreateRequest(ctx context.Context, _ *OracleSubscriptionsClientListBySubscriptionOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listBySubscriptionHandleResponse handles the ListBySubscription response. +func (client *OracleSubscriptionsClient) listBySubscriptionHandleResponse(resp *http.Response) (OracleSubscriptionsClientListBySubscriptionResponse, error) { + result := OracleSubscriptionsClientListBySubscriptionResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.OracleSubscriptionListResult); err != nil { + return OracleSubscriptionsClientListBySubscriptionResponse{}, err + } + return result, nil +} + +// BeginListCloudAccountDetails - List Cloud Account Details +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - options - OracleSubscriptionsClientBeginListCloudAccountDetailsOptions contains the optional parameters for the OracleSubscriptionsClient.BeginListCloudAccountDetails +// method. +func (client *OracleSubscriptionsClient) BeginListCloudAccountDetails(ctx context.Context, options *OracleSubscriptionsClientBeginListCloudAccountDetailsOptions) (*runtime.Poller[OracleSubscriptionsClientListCloudAccountDetailsResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.listCloudAccountDetails(ctx, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[OracleSubscriptionsClientListCloudAccountDetailsResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[OracleSubscriptionsClientListCloudAccountDetailsResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// ListCloudAccountDetails - List Cloud Account Details +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *OracleSubscriptionsClient) listCloudAccountDetails(ctx context.Context, options *OracleSubscriptionsClientBeginListCloudAccountDetailsOptions) (*http.Response, error) { + var err error + const operationName = "OracleSubscriptionsClient.BeginListCloudAccountDetails" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.listCloudAccountDetailsCreateRequest(ctx, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// listCloudAccountDetailsCreateRequest creates the ListCloudAccountDetails request. +func (client *OracleSubscriptionsClient) listCloudAccountDetailsCreateRequest(ctx context.Context, _ *OracleSubscriptionsClientBeginListCloudAccountDetailsOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions/default/listCloudAccountDetails" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// BeginListSaasSubscriptionDetails - List Saas Subscription Details +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - options - OracleSubscriptionsClientBeginListSaasSubscriptionDetailsOptions contains the optional parameters for the OracleSubscriptionsClient.BeginListSaasSubscriptionDetails +// method. +func (client *OracleSubscriptionsClient) BeginListSaasSubscriptionDetails(ctx context.Context, options *OracleSubscriptionsClientBeginListSaasSubscriptionDetailsOptions) (*runtime.Poller[OracleSubscriptionsClientListSaasSubscriptionDetailsResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.listSaasSubscriptionDetails(ctx, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[OracleSubscriptionsClientListSaasSubscriptionDetailsResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[OracleSubscriptionsClientListSaasSubscriptionDetailsResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// ListSaasSubscriptionDetails - List Saas Subscription Details +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *OracleSubscriptionsClient) listSaasSubscriptionDetails(ctx context.Context, options *OracleSubscriptionsClientBeginListSaasSubscriptionDetailsOptions) (*http.Response, error) { + var err error + const operationName = "OracleSubscriptionsClient.BeginListSaasSubscriptionDetails" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.listSaasSubscriptionDetailsCreateRequest(ctx, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// listSaasSubscriptionDetailsCreateRequest creates the ListSaasSubscriptionDetails request. +func (client *OracleSubscriptionsClient) listSaasSubscriptionDetailsCreateRequest(ctx context.Context, _ *OracleSubscriptionsClientBeginListSaasSubscriptionDetailsOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions/default/listSaasSubscriptionDetails" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// BeginUpdate - Update a OracleSubscription +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - properties - The resource properties to be updated. +// - options - OracleSubscriptionsClientBeginUpdateOptions contains the optional parameters for the OracleSubscriptionsClient.BeginUpdate +// method. +func (client *OracleSubscriptionsClient) BeginUpdate(ctx context.Context, properties OracleSubscriptionUpdate, options *OracleSubscriptionsClientBeginUpdateOptions) (*runtime.Poller[OracleSubscriptionsClientUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.update(ctx, properties, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[OracleSubscriptionsClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[OracleSubscriptionsClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Update - Update a OracleSubscription +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *OracleSubscriptionsClient) update(ctx context.Context, properties OracleSubscriptionUpdate, options *OracleSubscriptionsClientBeginUpdateOptions) (*http.Response, error) { + var err error + const operationName = "OracleSubscriptionsClient.BeginUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.updateCreateRequest(ctx, properties, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// updateCreateRequest creates the Update request. +func (client *OracleSubscriptionsClient) updateCreateRequest(ctx context.Context, properties OracleSubscriptionUpdate, _ *OracleSubscriptionsClientBeginUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/oracleSubscriptions/default" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, properties); err != nil { + return nil, err + } + return req, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/polymorphic_helpers.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/polymorphic_helpers.go new file mode 100644 index 00000000..6f21e916 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/polymorphic_helpers.go @@ -0,0 +1,34 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import "encoding/json" + +func unmarshalAutonomousDatabaseBasePropertiesClassification(rawMsg json.RawMessage) (AutonomousDatabaseBasePropertiesClassification, error) { + if rawMsg == nil || string(rawMsg) == "null" { + return nil, nil + } + var m map[string]any + if err := json.Unmarshal(rawMsg, &m); err != nil { + return nil, err + } + var b AutonomousDatabaseBasePropertiesClassification + switch m["dataBaseType"] { + case string(DataBaseTypeRegular): + b = &AutonomousDatabaseProperties{} + case string(DataBaseTypeClone): + b = &AutonomousDatabaseCloneProperties{} + case string(DataBaseTypeCrossRegionDisasterRecovery): + b = &AutonomousDatabaseCrossRegionDisasterRecoveryProperties{} + case string(DataBaseTypeCloneFromBackupTimestamp): + b = &AutonomousDatabaseFromBackupTimestampProperties{} + default: + b = &AutonomousDatabaseBaseProperties{} + } + if err := json.Unmarshal(rawMsg, b); err != nil { + return nil, err + } + return b, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/responses.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/responses.go new file mode 100644 index 00000000..71642aaa --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/responses.go @@ -0,0 +1,523 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +// AutonomousDatabaseBackupsClientCreateOrUpdateResponse contains the response from method AutonomousDatabaseBackupsClient.BeginCreateOrUpdate. +type AutonomousDatabaseBackupsClientCreateOrUpdateResponse struct { + // AutonomousDatabaseBackup resource definition + AutonomousDatabaseBackup +} + +// AutonomousDatabaseBackupsClientDeleteResponse contains the response from method AutonomousDatabaseBackupsClient.BeginDelete. +type AutonomousDatabaseBackupsClientDeleteResponse struct { + // placeholder for future response values +} + +// AutonomousDatabaseBackupsClientGetResponse contains the response from method AutonomousDatabaseBackupsClient.Get. +type AutonomousDatabaseBackupsClientGetResponse struct { + // AutonomousDatabaseBackup resource definition + AutonomousDatabaseBackup +} + +// AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse contains the response from method AutonomousDatabaseBackupsClient.NewListByAutonomousDatabasePager. +type AutonomousDatabaseBackupsClientListByAutonomousDatabaseResponse struct { + // The response of a AutonomousDatabaseBackup list operation. + AutonomousDatabaseBackupListResult +} + +// AutonomousDatabaseBackupsClientUpdateResponse contains the response from method AutonomousDatabaseBackupsClient.BeginUpdate. +type AutonomousDatabaseBackupsClientUpdateResponse struct { + // AutonomousDatabaseBackup resource definition + AutonomousDatabaseBackup +} + +// AutonomousDatabaseCharacterSetsClientGetResponse contains the response from method AutonomousDatabaseCharacterSetsClient.Get. +type AutonomousDatabaseCharacterSetsClientGetResponse struct { + // AutonomousDatabaseCharacterSets resource definition + AutonomousDatabaseCharacterSet +} + +// AutonomousDatabaseCharacterSetsClientListByLocationResponse contains the response from method AutonomousDatabaseCharacterSetsClient.NewListByLocationPager. +type AutonomousDatabaseCharacterSetsClientListByLocationResponse struct { + // The response of a AutonomousDatabaseCharacterSet list operation. + AutonomousDatabaseCharacterSetListResult +} + +// AutonomousDatabaseNationalCharacterSetsClientGetResponse contains the response from method AutonomousDatabaseNationalCharacterSetsClient.Get. +type AutonomousDatabaseNationalCharacterSetsClientGetResponse struct { + // AutonomousDatabaseNationalCharacterSets resource definition + AutonomousDatabaseNationalCharacterSet +} + +// AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse contains the response from method AutonomousDatabaseNationalCharacterSetsClient.NewListByLocationPager. +type AutonomousDatabaseNationalCharacterSetsClientListByLocationResponse struct { + // The response of a AutonomousDatabaseNationalCharacterSet list operation. + AutonomousDatabaseNationalCharacterSetListResult +} + +// AutonomousDatabaseVersionsClientGetResponse contains the response from method AutonomousDatabaseVersionsClient.Get. +type AutonomousDatabaseVersionsClientGetResponse struct { + // AutonomousDbVersion resource definition + AutonomousDbVersion +} + +// AutonomousDatabaseVersionsClientListByLocationResponse contains the response from method AutonomousDatabaseVersionsClient.NewListByLocationPager. +type AutonomousDatabaseVersionsClientListByLocationResponse struct { + // The response of a AutonomousDbVersion list operation. + AutonomousDbVersionListResult +} + +// AutonomousDatabasesClientChangeDisasterRecoveryConfigurationResponse contains the response from method AutonomousDatabasesClient.BeginChangeDisasterRecoveryConfiguration. +type AutonomousDatabasesClientChangeDisasterRecoveryConfigurationResponse struct { + // Autonomous Database resource model. + AutonomousDatabase +} + +// AutonomousDatabasesClientCreateOrUpdateResponse contains the response from method AutonomousDatabasesClient.BeginCreateOrUpdate. +type AutonomousDatabasesClientCreateOrUpdateResponse struct { + // Autonomous Database resource model. + AutonomousDatabase +} + +// AutonomousDatabasesClientDeleteResponse contains the response from method AutonomousDatabasesClient.BeginDelete. +type AutonomousDatabasesClientDeleteResponse struct { + // placeholder for future response values +} + +// AutonomousDatabasesClientFailoverResponse contains the response from method AutonomousDatabasesClient.BeginFailover. +type AutonomousDatabasesClientFailoverResponse struct { + // Autonomous Database resource model. + AutonomousDatabase +} + +// AutonomousDatabasesClientGenerateWalletResponse contains the response from method AutonomousDatabasesClient.GenerateWallet. +type AutonomousDatabasesClientGenerateWalletResponse struct { + // Autonomous Database Wallet File resource model. + AutonomousDatabaseWalletFile +} + +// AutonomousDatabasesClientGetResponse contains the response from method AutonomousDatabasesClient.Get. +type AutonomousDatabasesClientGetResponse struct { + // Autonomous Database resource model. + AutonomousDatabase +} + +// AutonomousDatabasesClientListByResourceGroupResponse contains the response from method AutonomousDatabasesClient.NewListByResourceGroupPager. +type AutonomousDatabasesClientListByResourceGroupResponse struct { + // The response of a AutonomousDatabase list operation. + AutonomousDatabaseListResult +} + +// AutonomousDatabasesClientListBySubscriptionResponse contains the response from method AutonomousDatabasesClient.NewListBySubscriptionPager. +type AutonomousDatabasesClientListBySubscriptionResponse struct { + // The response of a AutonomousDatabase list operation. + AutonomousDatabaseListResult +} + +// AutonomousDatabasesClientRestoreResponse contains the response from method AutonomousDatabasesClient.BeginRestore. +type AutonomousDatabasesClientRestoreResponse struct { + // Autonomous Database resource model. + AutonomousDatabase +} + +// AutonomousDatabasesClientShrinkResponse contains the response from method AutonomousDatabasesClient.BeginShrink. +type AutonomousDatabasesClientShrinkResponse struct { + // Autonomous Database resource model. + AutonomousDatabase +} + +// AutonomousDatabasesClientSwitchoverResponse contains the response from method AutonomousDatabasesClient.BeginSwitchover. +type AutonomousDatabasesClientSwitchoverResponse struct { + // Autonomous Database resource model. + AutonomousDatabase +} + +// AutonomousDatabasesClientUpdateResponse contains the response from method AutonomousDatabasesClient.BeginUpdate. +type AutonomousDatabasesClientUpdateResponse struct { + // Autonomous Database resource model. + AutonomousDatabase +} + +// CloudExadataInfrastructuresClientAddStorageCapacityResponse contains the response from method CloudExadataInfrastructuresClient.BeginAddStorageCapacity. +type CloudExadataInfrastructuresClientAddStorageCapacityResponse struct { + // CloudExadataInfrastructure resource definition + CloudExadataInfrastructure +} + +// CloudExadataInfrastructuresClientCreateOrUpdateResponse contains the response from method CloudExadataInfrastructuresClient.BeginCreateOrUpdate. +type CloudExadataInfrastructuresClientCreateOrUpdateResponse struct { + // CloudExadataInfrastructure resource definition + CloudExadataInfrastructure +} + +// CloudExadataInfrastructuresClientDeleteResponse contains the response from method CloudExadataInfrastructuresClient.BeginDelete. +type CloudExadataInfrastructuresClientDeleteResponse struct { + // placeholder for future response values +} + +// CloudExadataInfrastructuresClientGetResponse contains the response from method CloudExadataInfrastructuresClient.Get. +type CloudExadataInfrastructuresClientGetResponse struct { + // CloudExadataInfrastructure resource definition + CloudExadataInfrastructure +} + +// CloudExadataInfrastructuresClientListByResourceGroupResponse contains the response from method CloudExadataInfrastructuresClient.NewListByResourceGroupPager. +type CloudExadataInfrastructuresClientListByResourceGroupResponse struct { + // The response of a CloudExadataInfrastructure list operation. + CloudExadataInfrastructureListResult +} + +// CloudExadataInfrastructuresClientListBySubscriptionResponse contains the response from method CloudExadataInfrastructuresClient.NewListBySubscriptionPager. +type CloudExadataInfrastructuresClientListBySubscriptionResponse struct { + // The response of a CloudExadataInfrastructure list operation. + CloudExadataInfrastructureListResult +} + +// CloudExadataInfrastructuresClientUpdateResponse contains the response from method CloudExadataInfrastructuresClient.BeginUpdate. +type CloudExadataInfrastructuresClientUpdateResponse struct { + // CloudExadataInfrastructure resource definition + CloudExadataInfrastructure +} + +// CloudVMClustersClientAddVMsResponse contains the response from method CloudVMClustersClient.BeginAddVMs. +type CloudVMClustersClientAddVMsResponse struct { + // CloudVmCluster resource definition + CloudVMCluster +} + +// CloudVMClustersClientCreateOrUpdateResponse contains the response from method CloudVMClustersClient.BeginCreateOrUpdate. +type CloudVMClustersClientCreateOrUpdateResponse struct { + // CloudVmCluster resource definition + CloudVMCluster +} + +// CloudVMClustersClientDeleteResponse contains the response from method CloudVMClustersClient.BeginDelete. +type CloudVMClustersClientDeleteResponse struct { + // placeholder for future response values +} + +// CloudVMClustersClientGetResponse contains the response from method CloudVMClustersClient.Get. +type CloudVMClustersClientGetResponse struct { + // CloudVmCluster resource definition + CloudVMCluster +} + +// CloudVMClustersClientListByResourceGroupResponse contains the response from method CloudVMClustersClient.NewListByResourceGroupPager. +type CloudVMClustersClientListByResourceGroupResponse struct { + // The response of a CloudVmCluster list operation. + CloudVMClusterListResult +} + +// CloudVMClustersClientListBySubscriptionResponse contains the response from method CloudVMClustersClient.NewListBySubscriptionPager. +type CloudVMClustersClientListBySubscriptionResponse struct { + // The response of a CloudVmCluster list operation. + CloudVMClusterListResult +} + +// CloudVMClustersClientListPrivateIPAddressesResponse contains the response from method CloudVMClustersClient.ListPrivateIPAddresses. +type CloudVMClustersClientListPrivateIPAddressesResponse struct { + PrivateIPAddressPropertiesArray []*PrivateIPAddressProperties +} + +// CloudVMClustersClientRemoveVMsResponse contains the response from method CloudVMClustersClient.BeginRemoveVMs. +type CloudVMClustersClientRemoveVMsResponse struct { + // CloudVmCluster resource definition + CloudVMCluster +} + +// CloudVMClustersClientUpdateResponse contains the response from method CloudVMClustersClient.BeginUpdate. +type CloudVMClustersClientUpdateResponse struct { + // CloudVmCluster resource definition + CloudVMCluster +} + +// DNSPrivateViewsClientGetResponse contains the response from method DNSPrivateViewsClient.Get. +type DNSPrivateViewsClientGetResponse struct { + // DnsPrivateView resource definition + DNSPrivateView +} + +// DNSPrivateViewsClientListByLocationResponse contains the response from method DNSPrivateViewsClient.NewListByLocationPager. +type DNSPrivateViewsClientListByLocationResponse struct { + // The response of a DnsPrivateView list operation. + DNSPrivateViewListResult +} + +// DNSPrivateZonesClientGetResponse contains the response from method DNSPrivateZonesClient.Get. +type DNSPrivateZonesClientGetResponse struct { + // DnsPrivateZone resource definition + DNSPrivateZone +} + +// DNSPrivateZonesClientListByLocationResponse contains the response from method DNSPrivateZonesClient.NewListByLocationPager. +type DNSPrivateZonesClientListByLocationResponse struct { + // The response of a DnsPrivateZone list operation. + DNSPrivateZoneListResult +} + +// DbNodesClientActionResponse contains the response from method DbNodesClient.BeginAction. +type DbNodesClientActionResponse struct { + // The DbNode resource belonging to vmCluster + DbNode +} + +// DbNodesClientGetResponse contains the response from method DbNodesClient.Get. +type DbNodesClientGetResponse struct { + // The DbNode resource belonging to vmCluster + DbNode +} + +// DbNodesClientListByCloudVMClusterResponse contains the response from method DbNodesClient.NewListByCloudVMClusterPager. +type DbNodesClientListByCloudVMClusterResponse struct { + // The response of a DbNode list operation. + DbNodeListResult +} + +// DbServersClientGetResponse contains the response from method DbServersClient.Get. +type DbServersClientGetResponse struct { + // DbServer resource model + DbServer +} + +// DbServersClientListByCloudExadataInfrastructureResponse contains the response from method DbServersClient.NewListByCloudExadataInfrastructurePager. +type DbServersClientListByCloudExadataInfrastructureResponse struct { + // The response of a DbServer list operation. + DbServerListResult +} + +// DbSystemShapesClientGetResponse contains the response from method DbSystemShapesClient.Get. +type DbSystemShapesClientGetResponse struct { + // DbSystemShape resource definition + DbSystemShape +} + +// DbSystemShapesClientListByLocationResponse contains the response from method DbSystemShapesClient.NewListByLocationPager. +type DbSystemShapesClientListByLocationResponse struct { + // The response of a DbSystemShape list operation. + DbSystemShapeListResult +} + +// ExadbVMClustersClientCreateOrUpdateResponse contains the response from method ExadbVMClustersClient.BeginCreateOrUpdate. +type ExadbVMClustersClientCreateOrUpdateResponse struct { + // ExadbVmCluster resource definition + ExadbVMCluster +} + +// ExadbVMClustersClientDeleteResponse contains the response from method ExadbVMClustersClient.BeginDelete. +type ExadbVMClustersClientDeleteResponse struct { + // placeholder for future response values +} + +// ExadbVMClustersClientGetResponse contains the response from method ExadbVMClustersClient.Get. +type ExadbVMClustersClientGetResponse struct { + // ExadbVmCluster resource definition + ExadbVMCluster +} + +// ExadbVMClustersClientListByResourceGroupResponse contains the response from method ExadbVMClustersClient.NewListByResourceGroupPager. +type ExadbVMClustersClientListByResourceGroupResponse struct { + // The response of a ExadbVmCluster list operation. + ExadbVMClusterListResult +} + +// ExadbVMClustersClientListBySubscriptionResponse contains the response from method ExadbVMClustersClient.NewListBySubscriptionPager. +type ExadbVMClustersClientListBySubscriptionResponse struct { + // The response of a ExadbVmCluster list operation. + ExadbVMClusterListResult +} + +// ExadbVMClustersClientRemoveVMsResponse contains the response from method ExadbVMClustersClient.BeginRemoveVMs. +type ExadbVMClustersClientRemoveVMsResponse struct { + // ExadbVmCluster resource definition + ExadbVMCluster +} + +// ExadbVMClustersClientUpdateResponse contains the response from method ExadbVMClustersClient.BeginUpdate. +type ExadbVMClustersClientUpdateResponse struct { + // ExadbVmCluster resource definition + ExadbVMCluster +} + +// ExascaleDbNodesClientActionResponse contains the response from method ExascaleDbNodesClient.BeginAction. +type ExascaleDbNodesClientActionResponse struct { + // ExascaleDbNode action response + DbActionResponse +} + +// ExascaleDbNodesClientGetResponse contains the response from method ExascaleDbNodesClient.Get. +type ExascaleDbNodesClientGetResponse struct { + // The DbNode resource belonging to ExadbVmCluster + ExascaleDbNode +} + +// ExascaleDbNodesClientListByParentResponse contains the response from method ExascaleDbNodesClient.NewListByParentPager. +type ExascaleDbNodesClientListByParentResponse struct { + // The response of a ExascaleDbNode list operation. + ExascaleDbNodeListResult +} + +// ExascaleDbStorageVaultsClientCreateResponse contains the response from method ExascaleDbStorageVaultsClient.BeginCreate. +type ExascaleDbStorageVaultsClientCreateResponse struct { + // ExascaleDbStorageVault resource definition + ExascaleDbStorageVault +} + +// ExascaleDbStorageVaultsClientDeleteResponse contains the response from method ExascaleDbStorageVaultsClient.BeginDelete. +type ExascaleDbStorageVaultsClientDeleteResponse struct { + // placeholder for future response values +} + +// ExascaleDbStorageVaultsClientGetResponse contains the response from method ExascaleDbStorageVaultsClient.Get. +type ExascaleDbStorageVaultsClientGetResponse struct { + // ExascaleDbStorageVault resource definition + ExascaleDbStorageVault +} + +// ExascaleDbStorageVaultsClientListByResourceGroupResponse contains the response from method ExascaleDbStorageVaultsClient.NewListByResourceGroupPager. +type ExascaleDbStorageVaultsClientListByResourceGroupResponse struct { + // The response of a ExascaleDbStorageVault list operation. + ExascaleDbStorageVaultListResult +} + +// ExascaleDbStorageVaultsClientListBySubscriptionResponse contains the response from method ExascaleDbStorageVaultsClient.NewListBySubscriptionPager. +type ExascaleDbStorageVaultsClientListBySubscriptionResponse struct { + // The response of a ExascaleDbStorageVault list operation. + ExascaleDbStorageVaultListResult +} + +// ExascaleDbStorageVaultsClientUpdateResponse contains the response from method ExascaleDbStorageVaultsClient.BeginUpdate. +type ExascaleDbStorageVaultsClientUpdateResponse struct { + // ExascaleDbStorageVault resource definition + ExascaleDbStorageVault +} + +// FlexComponentsClientGetResponse contains the response from method FlexComponentsClient.Get. +type FlexComponentsClientGetResponse struct { + // FlexComponent Resource Definition + FlexComponent +} + +// FlexComponentsClientListByParentResponse contains the response from method FlexComponentsClient.NewListByParentPager. +type FlexComponentsClientListByParentResponse struct { + // The response of a FlexComponent list operation. + FlexComponentListResult +} + +// GiMinorVersionsClientGetResponse contains the response from method GiMinorVersionsClient.Get. +type GiMinorVersionsClientGetResponse struct { + // The Oracle Grid Infrastructure (GI) minor version resource definition. + GiMinorVersion +} + +// GiMinorVersionsClientListByParentResponse contains the response from method GiMinorVersionsClient.NewListByParentPager. +type GiMinorVersionsClientListByParentResponse struct { + // The response of a GiMinorVersion list operation. + GiMinorVersionListResult +} + +// GiVersionsClientGetResponse contains the response from method GiVersionsClient.Get. +type GiVersionsClientGetResponse struct { + // GiVersion resource definition + GiVersion +} + +// GiVersionsClientListByLocationResponse contains the response from method GiVersionsClient.NewListByLocationPager. +type GiVersionsClientListByLocationResponse struct { + // The response of a GiVersion list operation. + GiVersionListResult +} + +// OperationsClientListResponse contains the response from method OperationsClient.NewListPager. +type OperationsClientListResponse struct { + // A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. + OperationListResult +} + +// OracleSubscriptionsClientAddAzureSubscriptionsResponse contains the response from method OracleSubscriptionsClient.BeginAddAzureSubscriptions. +type OracleSubscriptionsClientAddAzureSubscriptionsResponse struct { + // placeholder for future response values +} + +// OracleSubscriptionsClientCreateOrUpdateResponse contains the response from method OracleSubscriptionsClient.BeginCreateOrUpdate. +type OracleSubscriptionsClientCreateOrUpdateResponse struct { + // OracleSubscription resource definition + OracleSubscription +} + +// OracleSubscriptionsClientDeleteResponse contains the response from method OracleSubscriptionsClient.BeginDelete. +type OracleSubscriptionsClientDeleteResponse struct { + // placeholder for future response values +} + +// OracleSubscriptionsClientGetResponse contains the response from method OracleSubscriptionsClient.Get. +type OracleSubscriptionsClientGetResponse struct { + // OracleSubscription resource definition + OracleSubscription +} + +// OracleSubscriptionsClientListActivationLinksResponse contains the response from method OracleSubscriptionsClient.BeginListActivationLinks. +type OracleSubscriptionsClientListActivationLinksResponse struct { + // Activation Links model + ActivationLinks +} + +// OracleSubscriptionsClientListBySubscriptionResponse contains the response from method OracleSubscriptionsClient.NewListBySubscriptionPager. +type OracleSubscriptionsClientListBySubscriptionResponse struct { + // The response of a OracleSubscription list operation. + OracleSubscriptionListResult +} + +// OracleSubscriptionsClientListCloudAccountDetailsResponse contains the response from method OracleSubscriptionsClient.BeginListCloudAccountDetails. +type OracleSubscriptionsClientListCloudAccountDetailsResponse struct { + // Cloud Account Details model + CloudAccountDetails +} + +// OracleSubscriptionsClientListSaasSubscriptionDetailsResponse contains the response from method OracleSubscriptionsClient.BeginListSaasSubscriptionDetails. +type OracleSubscriptionsClientListSaasSubscriptionDetailsResponse struct { + // SaaS Subscription Details model + SaasSubscriptionDetails +} + +// OracleSubscriptionsClientUpdateResponse contains the response from method OracleSubscriptionsClient.BeginUpdate. +type OracleSubscriptionsClientUpdateResponse struct { + // OracleSubscription resource definition + OracleSubscription +} + +// SystemVersionsClientGetResponse contains the response from method SystemVersionsClient.Get. +type SystemVersionsClientGetResponse struct { + // SystemVersion resource Definition + SystemVersion +} + +// SystemVersionsClientListByLocationResponse contains the response from method SystemVersionsClient.NewListByLocationPager. +type SystemVersionsClientListByLocationResponse struct { + // The response of a SystemVersion list operation. + SystemVersionListResult +} + +// VirtualNetworkAddressesClientCreateOrUpdateResponse contains the response from method VirtualNetworkAddressesClient.BeginCreateOrUpdate. +type VirtualNetworkAddressesClientCreateOrUpdateResponse struct { + // Virtual IP resource belonging to a vm cluster resource. + VirtualNetworkAddress +} + +// VirtualNetworkAddressesClientDeleteResponse contains the response from method VirtualNetworkAddressesClient.BeginDelete. +type VirtualNetworkAddressesClientDeleteResponse struct { + // placeholder for future response values +} + +// VirtualNetworkAddressesClientGetResponse contains the response from method VirtualNetworkAddressesClient.Get. +type VirtualNetworkAddressesClientGetResponse struct { + // Virtual IP resource belonging to a vm cluster resource. + VirtualNetworkAddress +} + +// VirtualNetworkAddressesClientListByCloudVMClusterResponse contains the response from method VirtualNetworkAddressesClient.NewListByCloudVMClusterPager. +type VirtualNetworkAddressesClientListByCloudVMClusterResponse struct { + // The response of a VirtualNetworkAddress list operation. + VirtualNetworkAddressListResult +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/systemversions_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/systemversions_client.go new file mode 100644 index 00000000..e95b6186 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/systemversions_client.go @@ -0,0 +1,164 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// SystemVersionsClient contains the methods for the SystemVersions group. +// Don't use this type directly, use NewSystemVersionsClient() instead. +type SystemVersionsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewSystemVersionsClient creates a new instance of SystemVersionsClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewSystemVersionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*SystemVersionsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &SystemVersionsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Get a SystemVersion +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - systemversionname - SystemVersion name +// - options - SystemVersionsClientGetOptions contains the optional parameters for the SystemVersionsClient.Get method. +func (client *SystemVersionsClient) Get(ctx context.Context, location string, systemversionname string, options *SystemVersionsClientGetOptions) (SystemVersionsClientGetResponse, error) { + var err error + const operationName = "SystemVersionsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, systemversionname, options) + if err != nil { + return SystemVersionsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return SystemVersionsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return SystemVersionsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *SystemVersionsClient) getCreateRequest(ctx context.Context, location string, systemversionname string, _ *SystemVersionsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/systemVersions/{systemversionname}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if systemversionname == "" { + return nil, errors.New("parameter systemversionname cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{systemversionname}", url.PathEscape(systemversionname)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *SystemVersionsClient) getHandleResponse(resp *http.Response) (SystemVersionsClientGetResponse, error) { + result := SystemVersionsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.SystemVersion); err != nil { + return SystemVersionsClientGetResponse{}, err + } + return result, nil +} + +// NewListByLocationPager - List SystemVersion resources by SubscriptionLocationResource +// +// Generated from API version 2025-03-01 +// - location - The name of the Azure region. +// - options - SystemVersionsClientListByLocationOptions contains the optional parameters for the SystemVersionsClient.NewListByLocationPager +// method. +func (client *SystemVersionsClient) NewListByLocationPager(location string, options *SystemVersionsClientListByLocationOptions) *runtime.Pager[SystemVersionsClientListByLocationResponse] { + return runtime.NewPager(runtime.PagingHandler[SystemVersionsClientListByLocationResponse]{ + More: func(page SystemVersionsClientListByLocationResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *SystemVersionsClientListByLocationResponse) (SystemVersionsClientListByLocationResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "SystemVersionsClient.NewListByLocationPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByLocationCreateRequest(ctx, location, options) + }, nil) + if err != nil { + return SystemVersionsClientListByLocationResponse{}, err + } + return client.listByLocationHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByLocationCreateRequest creates the ListByLocation request. +func (client *SystemVersionsClient) listByLocationCreateRequest(ctx context.Context, location string, _ *SystemVersionsClientListByLocationOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Oracle.Database/locations/{location}/systemVersions" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByLocationHandleResponse handles the ListByLocation response. +func (client *SystemVersionsClient) listByLocationHandleResponse(resp *http.Response) (SystemVersionsClientListByLocationResponse, error) { + result := SystemVersionsClientListByLocationResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.SystemVersionListResult); err != nil { + return SystemVersionsClientListByLocationResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/time_rfc3339.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/time_rfc3339.go new file mode 100644 index 00000000..8cd6cef5 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/time_rfc3339.go @@ -0,0 +1,109 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "encoding/json" + "fmt" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "reflect" + "regexp" + "strings" + "time" +) + +// Azure reports time in UTC but it doesn't include the 'Z' time zone suffix in some cases. +var tzOffsetRegex = regexp.MustCompile(`(?:Z|z|\+|-)(?:\d+:\d+)*"*$`) + +const ( + utcDateTime = "2006-01-02T15:04:05.999999999" + utcDateTimeJSON = `"` + utcDateTime + `"` + utcDateTimeNoT = "2006-01-02 15:04:05.999999999" + utcDateTimeJSONNoT = `"` + utcDateTimeNoT + `"` + dateTimeNoT = `2006-01-02 15:04:05.999999999Z07:00` + dateTimeJSON = `"` + time.RFC3339Nano + `"` + dateTimeJSONNoT = `"` + dateTimeNoT + `"` +) + +type dateTimeRFC3339 time.Time + +func (t dateTimeRFC3339) MarshalJSON() ([]byte, error) { + tt := time.Time(t) + return tt.MarshalJSON() +} + +func (t dateTimeRFC3339) MarshalText() ([]byte, error) { + tt := time.Time(t) + return tt.MarshalText() +} + +func (t *dateTimeRFC3339) UnmarshalJSON(data []byte) error { + tzOffset := tzOffsetRegex.Match(data) + hasT := strings.Contains(string(data), "T") || strings.Contains(string(data), "t") + var layout string + if tzOffset && hasT { + layout = dateTimeJSON + } else if tzOffset { + layout = dateTimeJSONNoT + } else if hasT { + layout = utcDateTimeJSON + } else { + layout = utcDateTimeJSONNoT + } + return t.Parse(layout, string(data)) +} + +func (t *dateTimeRFC3339) UnmarshalText(data []byte) error { + if len(data) == 0 { + return nil + } + tzOffset := tzOffsetRegex.Match(data) + hasT := strings.Contains(string(data), "T") || strings.Contains(string(data), "t") + var layout string + if tzOffset && hasT { + layout = time.RFC3339Nano + } else if tzOffset { + layout = dateTimeNoT + } else if hasT { + layout = utcDateTime + } else { + layout = utcDateTimeNoT + } + return t.Parse(layout, string(data)) +} + +func (t *dateTimeRFC3339) Parse(layout, value string) error { + p, err := time.Parse(layout, strings.ToUpper(value)) + *t = dateTimeRFC3339(p) + return err +} + +func (t dateTimeRFC3339) String() string { + return time.Time(t).Format(time.RFC3339Nano) +} + +func populateDateTimeRFC3339(m map[string]any, k string, t *time.Time) { + if t == nil { + return + } else if azcore.IsNullValue(t) { + m[k] = nil + return + } else if reflect.ValueOf(t).IsNil() { + return + } + m[k] = (*dateTimeRFC3339)(t) +} + +func unpopulateDateTimeRFC3339(data json.RawMessage, fn string, t **time.Time) error { + if data == nil || string(data) == "null" { + return nil + } + var aux dateTimeRFC3339 + if err := json.Unmarshal(data, &aux); err != nil { + return fmt.Errorf("struct field %s: %v", fn, err) + } + *t = (*time.Time)(&aux) + return nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/tsp-location.yaml b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/tsp-location.yaml new file mode 100644 index 00000000..eb933b8b --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/tsp-location.yaml @@ -0,0 +1,4 @@ +directory: specification/oracle/Oracle.Database.Management +commit: 3c2966598b7966dcca302d07dd7d28b1d1d744f3 +repo: Azure/azure-rest-api-specs +additionalDirectories: \ No newline at end of file diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/virtualnetworkaddresses_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/virtualnetworkaddresses_client.go new file mode 100644 index 00000000..6e90c3d9 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase/virtualnetworkaddresses_client.go @@ -0,0 +1,342 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) Go Code Generator. DO NOT EDIT. + +package armoracledatabase + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// VirtualNetworkAddressesClient contains the methods for the VirtualNetworkAddresses group. +// Don't use this type directly, use NewVirtualNetworkAddressesClient() instead. +type VirtualNetworkAddressesClient struct { + internal *arm.Client + subscriptionID string +} + +// NewVirtualNetworkAddressesClient creates a new instance of VirtualNetworkAddressesClient with the specified values. +// - subscriptionID - The ID of the target subscription. The value must be an UUID. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewVirtualNetworkAddressesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*VirtualNetworkAddressesClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &VirtualNetworkAddressesClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginCreateOrUpdate - Create a VirtualNetworkAddress +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - virtualnetworkaddressname - Virtual IP address hostname. +// - resource - Resource create parameters. +// - options - VirtualNetworkAddressesClientBeginCreateOrUpdateOptions contains the optional parameters for the VirtualNetworkAddressesClient.BeginCreateOrUpdate +// method. +func (client *VirtualNetworkAddressesClient) BeginCreateOrUpdate(ctx context.Context, resourceGroupName string, cloudvmclustername string, virtualnetworkaddressname string, resource VirtualNetworkAddress, options *VirtualNetworkAddressesClientBeginCreateOrUpdateOptions) (*runtime.Poller[VirtualNetworkAddressesClientCreateOrUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.createOrUpdate(ctx, resourceGroupName, cloudvmclustername, virtualnetworkaddressname, resource, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[VirtualNetworkAddressesClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[VirtualNetworkAddressesClientCreateOrUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// CreateOrUpdate - Create a VirtualNetworkAddress +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *VirtualNetworkAddressesClient) createOrUpdate(ctx context.Context, resourceGroupName string, cloudvmclustername string, virtualnetworkaddressname string, resource VirtualNetworkAddress, options *VirtualNetworkAddressesClientBeginCreateOrUpdateOptions) (*http.Response, error) { + var err error + const operationName = "VirtualNetworkAddressesClient.BeginCreateOrUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.createOrUpdateCreateRequest(ctx, resourceGroupName, cloudvmclustername, virtualnetworkaddressname, resource, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// createOrUpdateCreateRequest creates the CreateOrUpdate request. +func (client *VirtualNetworkAddressesClient) createOrUpdateCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, virtualnetworkaddressname string, resource VirtualNetworkAddress, _ *VirtualNetworkAddressesClientBeginCreateOrUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/virtualNetworkAddresses/{virtualnetworkaddressname}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + if virtualnetworkaddressname == "" { + return nil, errors.New("parameter virtualnetworkaddressname cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{virtualnetworkaddressname}", url.PathEscape(virtualnetworkaddressname)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + req.Raw().Header["Content-Type"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, resource); err != nil { + return nil, err + } + return req, nil +} + +// BeginDelete - Delete a VirtualNetworkAddress +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - virtualnetworkaddressname - Virtual IP address hostname. +// - options - VirtualNetworkAddressesClientBeginDeleteOptions contains the optional parameters for the VirtualNetworkAddressesClient.BeginDelete +// method. +func (client *VirtualNetworkAddressesClient) BeginDelete(ctx context.Context, resourceGroupName string, cloudvmclustername string, virtualnetworkaddressname string, options *VirtualNetworkAddressesClientBeginDeleteOptions) (*runtime.Poller[VirtualNetworkAddressesClientDeleteResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.deleteOperation(ctx, resourceGroupName, cloudvmclustername, virtualnetworkaddressname, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[VirtualNetworkAddressesClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[VirtualNetworkAddressesClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Delete - Delete a VirtualNetworkAddress +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +func (client *VirtualNetworkAddressesClient) deleteOperation(ctx context.Context, resourceGroupName string, cloudvmclustername string, virtualnetworkaddressname string, options *VirtualNetworkAddressesClientBeginDeleteOptions) (*http.Response, error) { + var err error + const operationName = "VirtualNetworkAddressesClient.BeginDelete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, resourceGroupName, cloudvmclustername, virtualnetworkaddressname, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusAccepted, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *VirtualNetworkAddressesClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, virtualnetworkaddressname string, _ *VirtualNetworkAddressesClientBeginDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/virtualNetworkAddresses/{virtualnetworkaddressname}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + if virtualnetworkaddressname == "" { + return nil, errors.New("parameter virtualnetworkaddressname cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{virtualnetworkaddressname}", url.PathEscape(virtualnetworkaddressname)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// Get - Get a VirtualNetworkAddress +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - virtualnetworkaddressname - Virtual IP address hostname. +// - options - VirtualNetworkAddressesClientGetOptions contains the optional parameters for the VirtualNetworkAddressesClient.Get +// method. +func (client *VirtualNetworkAddressesClient) Get(ctx context.Context, resourceGroupName string, cloudvmclustername string, virtualnetworkaddressname string, options *VirtualNetworkAddressesClientGetOptions) (VirtualNetworkAddressesClientGetResponse, error) { + var err error + const operationName = "VirtualNetworkAddressesClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, cloudvmclustername, virtualnetworkaddressname, options) + if err != nil { + return VirtualNetworkAddressesClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return VirtualNetworkAddressesClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return VirtualNetworkAddressesClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *VirtualNetworkAddressesClient) getCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, virtualnetworkaddressname string, _ *VirtualNetworkAddressesClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/virtualNetworkAddresses/{virtualnetworkaddressname}" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + if virtualnetworkaddressname == "" { + return nil, errors.New("parameter virtualnetworkaddressname cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{virtualnetworkaddressname}", url.PathEscape(virtualnetworkaddressname)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *VirtualNetworkAddressesClient) getHandleResponse(resp *http.Response) (VirtualNetworkAddressesClientGetResponse, error) { + result := VirtualNetworkAddressesClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.VirtualNetworkAddress); err != nil { + return VirtualNetworkAddressesClientGetResponse{}, err + } + return result, nil +} + +// NewListByCloudVMClusterPager - List VirtualNetworkAddress resources by CloudVmCluster +// +// Generated from API version 2025-03-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - cloudvmclustername - CloudVmCluster name +// - options - VirtualNetworkAddressesClientListByCloudVMClusterOptions contains the optional parameters for the VirtualNetworkAddressesClient.NewListByCloudVMClusterPager +// method. +func (client *VirtualNetworkAddressesClient) NewListByCloudVMClusterPager(resourceGroupName string, cloudvmclustername string, options *VirtualNetworkAddressesClientListByCloudVMClusterOptions) *runtime.Pager[VirtualNetworkAddressesClientListByCloudVMClusterResponse] { + return runtime.NewPager(runtime.PagingHandler[VirtualNetworkAddressesClientListByCloudVMClusterResponse]{ + More: func(page VirtualNetworkAddressesClientListByCloudVMClusterResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *VirtualNetworkAddressesClientListByCloudVMClusterResponse) (VirtualNetworkAddressesClientListByCloudVMClusterResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "VirtualNetworkAddressesClient.NewListByCloudVMClusterPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByCloudVMClusterCreateRequest(ctx, resourceGroupName, cloudvmclustername, options) + }, nil) + if err != nil { + return VirtualNetworkAddressesClientListByCloudVMClusterResponse{}, err + } + return client.listByCloudVMClusterHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByCloudVMClusterCreateRequest creates the ListByCloudVMCluster request. +func (client *VirtualNetworkAddressesClient) listByCloudVMClusterCreateRequest(ctx context.Context, resourceGroupName string, cloudvmclustername string, _ *VirtualNetworkAddressesClientListByCloudVMClusterOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Oracle.Database/cloudVmClusters/{cloudvmclustername}/virtualNetworkAddresses" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if cloudvmclustername == "" { + return nil, errors.New("parameter cloudvmclustername cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{cloudvmclustername}", url.PathEscape(cloudvmclustername)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2025-03-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByCloudVMClusterHandleResponse handles the ListByCloudVMCluster response. +func (client *VirtualNetworkAddressesClient) listByCloudVMClusterHandleResponse(resp *http.Response) (VirtualNetworkAddressesClientListByCloudVMClusterResponse, error) { + result := VirtualNetworkAddressesClientListByCloudVMClusterResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.VirtualNetworkAddressListResult); err != nil { + return VirtualNetworkAddressesClientListByCloudVMClusterResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/CHANGELOG.md b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/CHANGELOG.md new file mode 100644 index 00000000..410ad0e4 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/CHANGELOG.md @@ -0,0 +1,27 @@ +# Release History + +## 1.2.0 (2023-11-24) +### Features Added + +- Support for test fakes and OpenTelemetry trace spans. + + +## 1.1.1 (2023-04-14) +### Bug Fixes + +- Fix serialization bug of empty value of `any` type. + + +## 1.1.0 (2023-04-07) +### Features Added + +- New struct `ClientFactory` which is a client factory used to create any client in this module + + +## 1.0.0 (2022-05-17) + +The package of `github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise` is using our [next generation design principles](https://azure.github.io/azure-sdk/general_introduction.html) since version 1.0.0, which contains breaking changes. + +To migrate the existing applications to the latest version, please refer to [Migration Guide](https://aka.ms/azsdk/go/mgmt/migration). + +To learn more, please refer to our documentation [Quick Start](https://aka.ms/azsdk/go/mgmt). \ No newline at end of file diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/LICENSE.txt b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/LICENSE.txt new file mode 100644 index 00000000..dc0c2ffb --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/LICENSE.txt @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) Microsoft Corporation. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/README.md b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/README.md new file mode 100644 index 00000000..f2f54315 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/README.md @@ -0,0 +1,92 @@ +# Azure Redis Enterprise Module for Go + +[![PkgGoDev](https://pkg.go.dev/badge/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise)](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise) + +The `armredisenterprise` module provides operations for working with Azure Redis Enterprise. + +[Source code](https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/resourcemanager/redisenterprise/armredisenterprise) + +# Getting started + +## Prerequisites + +- an [Azure subscription](https://azure.microsoft.com/free/) +- Go 1.18 or above (You could download and install the latest version of Go from [here](https://go.dev/doc/install). It will replace the existing Go on your machine. If you want to install multiple Go versions on the same machine, you could refer this [doc](https://go.dev/doc/manage-install).) + +## Install the package + +This project uses [Go modules](https://github.com/golang/go/wiki/Modules) for versioning and dependency management. + +Install the Azure Redis Enterprise module: + +```sh +go get github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise +``` + +## Authorization + +When creating a client, you will need to provide a credential for authenticating with Azure Redis Enterprise. The `azidentity` module provides facilities for various ways of authenticating with Azure including client/secret, certificate, managed identity, and more. + +```go +cred, err := azidentity.NewDefaultAzureCredential(nil) +``` + +For more information on authentication, please see the documentation for `azidentity` at [pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity). + +## Client Factory + +Azure Redis Enterprise module consists of one or more clients. We provide a client factory which could be used to create any client in this module. + +```go +clientFactory, err := armredisenterprise.NewClientFactory(, cred, nil) +``` + +You can use `ClientOptions` in package `github.com/Azure/azure-sdk-for-go/sdk/azcore/arm` to set endpoint to connect with public and sovereign clouds as well as Azure Stack. For more information, please see the documentation for `azcore` at [pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore](https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azcore). + +```go +options := arm.ClientOptions { + ClientOptions: azcore.ClientOptions { + Cloud: cloud.AzureChina, + }, +} +clientFactory, err := armredisenterprise.NewClientFactory(, cred, &options) +``` + +## Clients + +A client groups a set of related APIs, providing access to its functionality. Create one or more clients to access the APIs you require using client factory. + +```go +client := clientFactory.NewDatabasesClient() +``` + +## Fakes + +The fake package contains types used for constructing in-memory fake servers used in unit tests. +This allows writing tests to cover various success/error conditions without the need for connecting to a live service. + +Please see https://github.com/Azure/azure-sdk-for-go/tree/main/sdk/samples/fakes for details and examples on how to use fakes. + +## Provide Feedback + +If you encounter bugs or have suggestions, please +[open an issue](https://github.com/Azure/azure-sdk-for-go/issues) and assign the `Redis Enterprise` label. + +# Contributing + +This project welcomes contributions and suggestions. Most contributions require +you to agree to a Contributor License Agreement (CLA) declaring that you have +the right to, and actually do, grant us the rights to use your contribution. +For details, visit [https://cla.microsoft.com](https://cla.microsoft.com). + +When you submit a pull request, a CLA-bot will automatically determine whether +you need to provide a CLA and decorate the PR appropriately (e.g., label, +comment). Simply follow the instructions provided by the bot. You will only +need to do this once across all repos using our CLA. + +This project has adopted the +[Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). +For more information, see the +[Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) +or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any +additional questions or comments. \ No newline at end of file diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/autorest.md b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/autorest.md new file mode 100644 index 00000000..065e00f8 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/autorest.md @@ -0,0 +1,13 @@ +### AutoRest Configuration + +> see https://aka.ms/autorest + +``` yaml +azure-arm: true +require: +- https://github.com/Azure/azure-rest-api-specs/blob/7a2ac91de424f271cf91cc8009f3fe9ee8249086/specification/redisenterprise/resource-manager/readme.md +- https://github.com/Azure/azure-rest-api-specs/blob/7a2ac91de424f271cf91cc8009f3fe9ee8249086/specification/redisenterprise/resource-manager/readme.go.md +license-header: MICROSOFT_MIT_NO_VERSION +module-version: 1.2.0 + +``` \ No newline at end of file diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/build.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/build.go new file mode 100644 index 00000000..1bff1436 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/build.go @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. + +// This file enables 'go generate' to regenerate this specific SDK +//go:generate pwsh ../../../../eng/scripts/build.ps1 -skipBuild -cleanGenerated -format -tidy -generate resourcemanager/redisenterprise/armredisenterprise + +package armredisenterprise diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/ci.yml b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/ci.yml new file mode 100644 index 00000000..dd38b95d --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/ci.yml @@ -0,0 +1,28 @@ +# NOTE: Please refer to https://aka.ms/azsdk/engsys/ci-yaml before editing this file. +trigger: + branches: + include: + - main + - feature/* + - hotfix/* + - release/* + paths: + include: + - sdk/resourcemanager/redisenterprise/armredisenterprise/ + +pr: + branches: + include: + - main + - feature/* + - hotfix/* + - release/* + paths: + include: + - sdk/resourcemanager/redisenterprise/armredisenterprise/ + +stages: +- template: /eng/pipelines/templates/jobs/archetype-sdk-client.yml + parameters: + IncludeRelease: true + ServiceDirectory: 'resourcemanager/redisenterprise/armredisenterprise' diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/client.go new file mode 100644 index 00000000..ea210e9e --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/client.go @@ -0,0 +1,458 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// Client contains the methods for the RedisEnterprise group. +// Don't use this type directly, use NewClient() instead. +type Client struct { + internal *arm.Client + subscriptionID string +} + +// NewClient creates a new instance of Client with the specified values. +// - subscriptionID - The ID of the target subscription. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*Client, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &Client{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginCreate - Creates or updates an existing (overwrite/recreate, with potential downtime) cache cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - parameters - Parameters supplied to the Create RedisEnterprise operation. +// - options - ClientBeginCreateOptions contains the optional parameters for the Client.BeginCreate method. +func (client *Client) BeginCreate(ctx context.Context, resourceGroupName string, clusterName string, parameters Cluster, options *ClientBeginCreateOptions) (*runtime.Poller[ClientCreateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.create(ctx, resourceGroupName, clusterName, parameters, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ClientCreateResponse]{ + FinalStateVia: runtime.FinalStateViaOriginalURI, + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ClientCreateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Create - Creates or updates an existing (overwrite/recreate, with potential downtime) cache cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *Client) create(ctx context.Context, resourceGroupName string, clusterName string, parameters Cluster, options *ClientBeginCreateOptions) (*http.Response, error) { + var err error + const operationName = "Client.BeginCreate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.createCreateRequest(ctx, resourceGroupName, clusterName, parameters, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// createCreateRequest creates the Create request. +func (client *Client) createCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, parameters Cluster, options *ClientBeginCreateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, parameters); err != nil { + return nil, err + } + return req, nil +} + +// BeginDelete - Deletes a RedisEnterprise cache cluster. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - options - ClientBeginDeleteOptions contains the optional parameters for the Client.BeginDelete method. +func (client *Client) BeginDelete(ctx context.Context, resourceGroupName string, clusterName string, options *ClientBeginDeleteOptions) (*runtime.Poller[ClientDeleteResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.deleteOperation(ctx, resourceGroupName, clusterName, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ClientDeleteResponse]{ + FinalStateVia: runtime.FinalStateViaAzureAsyncOp, + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Delete - Deletes a RedisEnterprise cache cluster. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *Client) deleteOperation(ctx context.Context, resourceGroupName string, clusterName string, options *ClientBeginDeleteOptions) (*http.Response, error) { + var err error + const operationName = "Client.BeginDelete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, resourceGroupName, clusterName, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *Client) deleteCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, options *ClientBeginDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// Get - Gets information about a RedisEnterprise cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - options - ClientGetOptions contains the optional parameters for the Client.Get method. +func (client *Client) Get(ctx context.Context, resourceGroupName string, clusterName string, options *ClientGetOptions) (ClientGetResponse, error) { + var err error + const operationName = "Client.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, clusterName, options) + if err != nil { + return ClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return ClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return ClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *Client) getCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, options *ClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *Client) getHandleResponse(resp *http.Response) (ClientGetResponse, error) { + result := ClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.Cluster); err != nil { + return ClientGetResponse{}, err + } + return result, nil +} + +// NewListPager - Gets all RedisEnterprise clusters in the specified subscription. +// +// Generated from API version 2022-01-01 +// - options - ClientListOptions contains the optional parameters for the Client.NewListPager method. +func (client *Client) NewListPager(options *ClientListOptions) *runtime.Pager[ClientListResponse] { + return runtime.NewPager(runtime.PagingHandler[ClientListResponse]{ + More: func(page ClientListResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *ClientListResponse) (ClientListResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "Client.NewListPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listCreateRequest(ctx, options) + }, nil) + if err != nil { + return ClientListResponse{}, err + } + return client.listHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listCreateRequest creates the List request. +func (client *Client) listCreateRequest(ctx context.Context, options *ClientListOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Microsoft.Cache/redisEnterprise" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listHandleResponse handles the List response. +func (client *Client) listHandleResponse(resp *http.Response) (ClientListResponse, error) { + result := ClientListResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.ClusterList); err != nil { + return ClientListResponse{}, err + } + return result, nil +} + +// NewListByResourceGroupPager - Lists all RedisEnterprise clusters in a resource group. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - options - ClientListByResourceGroupOptions contains the optional parameters for the Client.NewListByResourceGroupPager +// method. +func (client *Client) NewListByResourceGroupPager(resourceGroupName string, options *ClientListByResourceGroupOptions) *runtime.Pager[ClientListByResourceGroupResponse] { + return runtime.NewPager(runtime.PagingHandler[ClientListByResourceGroupResponse]{ + More: func(page ClientListByResourceGroupResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *ClientListByResourceGroupResponse) (ClientListByResourceGroupResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "Client.NewListByResourceGroupPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByResourceGroupCreateRequest(ctx, resourceGroupName, options) + }, nil) + if err != nil { + return ClientListByResourceGroupResponse{}, err + } + return client.listByResourceGroupHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByResourceGroupCreateRequest creates the ListByResourceGroup request. +func (client *Client) listByResourceGroupCreateRequest(ctx context.Context, resourceGroupName string, options *ClientListByResourceGroupOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByResourceGroupHandleResponse handles the ListByResourceGroup response. +func (client *Client) listByResourceGroupHandleResponse(resp *http.Response) (ClientListByResourceGroupResponse, error) { + result := ClientListByResourceGroupResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.ClusterList); err != nil { + return ClientListByResourceGroupResponse{}, err + } + return result, nil +} + +// BeginUpdate - Updates an existing RedisEnterprise cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - parameters - Parameters supplied to the Update RedisEnterprise operation. +// - options - ClientBeginUpdateOptions contains the optional parameters for the Client.BeginUpdate method. +func (client *Client) BeginUpdate(ctx context.Context, resourceGroupName string, clusterName string, parameters ClusterUpdate, options *ClientBeginUpdateOptions) (*runtime.Poller[ClientUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.update(ctx, resourceGroupName, clusterName, parameters, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[ClientUpdateResponse]{ + FinalStateVia: runtime.FinalStateViaAzureAsyncOp, + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[ClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Update - Updates an existing RedisEnterprise cluster +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *Client) update(ctx context.Context, resourceGroupName string, clusterName string, parameters ClusterUpdate, options *ClientBeginUpdateOptions) (*http.Response, error) { + var err error + const operationName = "Client.BeginUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.updateCreateRequest(ctx, resourceGroupName, clusterName, parameters, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// updateCreateRequest creates the Update request. +func (client *Client) updateCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, parameters ClusterUpdate, options *ClientBeginUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, parameters); err != nil { + return nil, err + } + return req, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/client_factory.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/client_factory.go new file mode 100644 index 00000000..d22a263e --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/client_factory.go @@ -0,0 +1,74 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +import ( + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" +) + +// ClientFactory is a client factory used to create any client in this module. +// Don't use this type directly, use NewClientFactory instead. +type ClientFactory struct { + subscriptionID string + credential azcore.TokenCredential + options *arm.ClientOptions +} + +// NewClientFactory creates a new instance of ClientFactory with the specified values. +// The parameter values will be propagated to any client created from this factory. +// - subscriptionID - The ID of the target subscription. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewClientFactory(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*ClientFactory, error) { + _, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + return &ClientFactory{ + subscriptionID: subscriptionID, credential: credential, + options: options.Clone(), + }, nil +} + +// NewClient creates a new instance of Client. +func (c *ClientFactory) NewClient() *Client { + subClient, _ := NewClient(c.subscriptionID, c.credential, c.options) + return subClient +} + +// NewDatabasesClient creates a new instance of DatabasesClient. +func (c *ClientFactory) NewDatabasesClient() *DatabasesClient { + subClient, _ := NewDatabasesClient(c.subscriptionID, c.credential, c.options) + return subClient +} + +// NewOperationsClient creates a new instance of OperationsClient. +func (c *ClientFactory) NewOperationsClient() *OperationsClient { + subClient, _ := NewOperationsClient(c.credential, c.options) + return subClient +} + +// NewOperationsStatusClient creates a new instance of OperationsStatusClient. +func (c *ClientFactory) NewOperationsStatusClient() *OperationsStatusClient { + subClient, _ := NewOperationsStatusClient(c.subscriptionID, c.credential, c.options) + return subClient +} + +// NewPrivateEndpointConnectionsClient creates a new instance of PrivateEndpointConnectionsClient. +func (c *ClientFactory) NewPrivateEndpointConnectionsClient() *PrivateEndpointConnectionsClient { + subClient, _ := NewPrivateEndpointConnectionsClient(c.subscriptionID, c.credential, c.options) + return subClient +} + +// NewPrivateLinkResourcesClient creates a new instance of PrivateLinkResourcesClient. +func (c *ClientFactory) NewPrivateLinkResourcesClient() *PrivateLinkResourcesClient { + subClient, _ := NewPrivateLinkResourcesClient(c.subscriptionID, c.credential, c.options) + return subClient +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/constants.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/constants.go new file mode 100644 index 00000000..ed144853 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/constants.go @@ -0,0 +1,321 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +const ( + moduleName = "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise" + moduleVersion = "v1.2.0" +) + +// AccessKeyType - Which access key to regenerate. +type AccessKeyType string + +const ( + AccessKeyTypePrimary AccessKeyType = "Primary" + AccessKeyTypeSecondary AccessKeyType = "Secondary" +) + +// PossibleAccessKeyTypeValues returns the possible values for the AccessKeyType const type. +func PossibleAccessKeyTypeValues() []AccessKeyType { + return []AccessKeyType{ + AccessKeyTypePrimary, + AccessKeyTypeSecondary, + } +} + +// ActionType - Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. +type ActionType string + +const ( + ActionTypeInternal ActionType = "Internal" +) + +// PossibleActionTypeValues returns the possible values for the ActionType const type. +func PossibleActionTypeValues() []ActionType { + return []ActionType{ + ActionTypeInternal, + } +} + +// AofFrequency - Sets the frequency at which data is written to disk. +type AofFrequency string + +const ( + AofFrequencyAlways AofFrequency = "always" + AofFrequencyOneS AofFrequency = "1s" +) + +// PossibleAofFrequencyValues returns the possible values for the AofFrequency const type. +func PossibleAofFrequencyValues() []AofFrequency { + return []AofFrequency{ + AofFrequencyAlways, + AofFrequencyOneS, + } +} + +// ClusteringPolicy - Clustering policy - default is OSSCluster. Specified at create time. +type ClusteringPolicy string + +const ( + ClusteringPolicyEnterpriseCluster ClusteringPolicy = "EnterpriseCluster" + ClusteringPolicyOSSCluster ClusteringPolicy = "OSSCluster" +) + +// PossibleClusteringPolicyValues returns the possible values for the ClusteringPolicy const type. +func PossibleClusteringPolicyValues() []ClusteringPolicy { + return []ClusteringPolicy{ + ClusteringPolicyEnterpriseCluster, + ClusteringPolicyOSSCluster, + } +} + +// EvictionPolicy - Redis eviction policy - default is VolatileLRU +type EvictionPolicy string + +const ( + EvictionPolicyAllKeysLFU EvictionPolicy = "AllKeysLFU" + EvictionPolicyAllKeysLRU EvictionPolicy = "AllKeysLRU" + EvictionPolicyAllKeysRandom EvictionPolicy = "AllKeysRandom" + EvictionPolicyNoEviction EvictionPolicy = "NoEviction" + EvictionPolicyVolatileLFU EvictionPolicy = "VolatileLFU" + EvictionPolicyVolatileLRU EvictionPolicy = "VolatileLRU" + EvictionPolicyVolatileRandom EvictionPolicy = "VolatileRandom" + EvictionPolicyVolatileTTL EvictionPolicy = "VolatileTTL" +) + +// PossibleEvictionPolicyValues returns the possible values for the EvictionPolicy const type. +func PossibleEvictionPolicyValues() []EvictionPolicy { + return []EvictionPolicy{ + EvictionPolicyAllKeysLFU, + EvictionPolicyAllKeysLRU, + EvictionPolicyAllKeysRandom, + EvictionPolicyNoEviction, + EvictionPolicyVolatileLFU, + EvictionPolicyVolatileLRU, + EvictionPolicyVolatileRandom, + EvictionPolicyVolatileTTL, + } +} + +// LinkState - State of the link between the database resources. +type LinkState string + +const ( + LinkStateLinkFailed LinkState = "LinkFailed" + LinkStateLinked LinkState = "Linked" + LinkStateLinking LinkState = "Linking" + LinkStateUnlinkFailed LinkState = "UnlinkFailed" + LinkStateUnlinking LinkState = "Unlinking" +) + +// PossibleLinkStateValues returns the possible values for the LinkState const type. +func PossibleLinkStateValues() []LinkState { + return []LinkState{ + LinkStateLinkFailed, + LinkStateLinked, + LinkStateLinking, + LinkStateUnlinkFailed, + LinkStateUnlinking, + } +} + +// Origin - The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default +// value is "user,system" +type Origin string + +const ( + OriginSystem Origin = "system" + OriginUser Origin = "user" + OriginUserSystem Origin = "user,system" +) + +// PossibleOriginValues returns the possible values for the Origin const type. +func PossibleOriginValues() []Origin { + return []Origin{ + OriginSystem, + OriginUser, + OriginUserSystem, + } +} + +// PrivateEndpointConnectionProvisioningState - The current provisioning state. +type PrivateEndpointConnectionProvisioningState string + +const ( + PrivateEndpointConnectionProvisioningStateCreating PrivateEndpointConnectionProvisioningState = "Creating" + PrivateEndpointConnectionProvisioningStateDeleting PrivateEndpointConnectionProvisioningState = "Deleting" + PrivateEndpointConnectionProvisioningStateFailed PrivateEndpointConnectionProvisioningState = "Failed" + PrivateEndpointConnectionProvisioningStateSucceeded PrivateEndpointConnectionProvisioningState = "Succeeded" +) + +// PossiblePrivateEndpointConnectionProvisioningStateValues returns the possible values for the PrivateEndpointConnectionProvisioningState const type. +func PossiblePrivateEndpointConnectionProvisioningStateValues() []PrivateEndpointConnectionProvisioningState { + return []PrivateEndpointConnectionProvisioningState{ + PrivateEndpointConnectionProvisioningStateCreating, + PrivateEndpointConnectionProvisioningStateDeleting, + PrivateEndpointConnectionProvisioningStateFailed, + PrivateEndpointConnectionProvisioningStateSucceeded, + } +} + +// PrivateEndpointServiceConnectionStatus - The private endpoint connection status. +type PrivateEndpointServiceConnectionStatus string + +const ( + PrivateEndpointServiceConnectionStatusApproved PrivateEndpointServiceConnectionStatus = "Approved" + PrivateEndpointServiceConnectionStatusPending PrivateEndpointServiceConnectionStatus = "Pending" + PrivateEndpointServiceConnectionStatusRejected PrivateEndpointServiceConnectionStatus = "Rejected" +) + +// PossiblePrivateEndpointServiceConnectionStatusValues returns the possible values for the PrivateEndpointServiceConnectionStatus const type. +func PossiblePrivateEndpointServiceConnectionStatusValues() []PrivateEndpointServiceConnectionStatus { + return []PrivateEndpointServiceConnectionStatus{ + PrivateEndpointServiceConnectionStatusApproved, + PrivateEndpointServiceConnectionStatusPending, + PrivateEndpointServiceConnectionStatusRejected, + } +} + +// Protocol - Specifies whether redis clients can connect using TLS-encrypted or plaintext redis protocols. Default is TLS-encrypted. +type Protocol string + +const ( + ProtocolEncrypted Protocol = "Encrypted" + ProtocolPlaintext Protocol = "Plaintext" +) + +// PossibleProtocolValues returns the possible values for the Protocol const type. +func PossibleProtocolValues() []Protocol { + return []Protocol{ + ProtocolEncrypted, + ProtocolPlaintext, + } +} + +// ProvisioningState - Current provisioning status +type ProvisioningState string + +const ( + ProvisioningStateCanceled ProvisioningState = "Canceled" + ProvisioningStateCreating ProvisioningState = "Creating" + ProvisioningStateDeleting ProvisioningState = "Deleting" + ProvisioningStateFailed ProvisioningState = "Failed" + ProvisioningStateSucceeded ProvisioningState = "Succeeded" + ProvisioningStateUpdating ProvisioningState = "Updating" +) + +// PossibleProvisioningStateValues returns the possible values for the ProvisioningState const type. +func PossibleProvisioningStateValues() []ProvisioningState { + return []ProvisioningState{ + ProvisioningStateCanceled, + ProvisioningStateCreating, + ProvisioningStateDeleting, + ProvisioningStateFailed, + ProvisioningStateSucceeded, + ProvisioningStateUpdating, + } +} + +// RdbFrequency - Sets the frequency at which a snapshot of the database is created. +type RdbFrequency string + +const ( + RdbFrequencyOneH RdbFrequency = "1h" + RdbFrequencySixH RdbFrequency = "6h" + RdbFrequencyTwelveH RdbFrequency = "12h" +) + +// PossibleRdbFrequencyValues returns the possible values for the RdbFrequency const type. +func PossibleRdbFrequencyValues() []RdbFrequency { + return []RdbFrequency{ + RdbFrequencyOneH, + RdbFrequencySixH, + RdbFrequencyTwelveH, + } +} + +// ResourceState - Current resource status +type ResourceState string + +const ( + ResourceStateCreateFailed ResourceState = "CreateFailed" + ResourceStateCreating ResourceState = "Creating" + ResourceStateDeleteFailed ResourceState = "DeleteFailed" + ResourceStateDeleting ResourceState = "Deleting" + ResourceStateDisableFailed ResourceState = "DisableFailed" + ResourceStateDisabled ResourceState = "Disabled" + ResourceStateDisabling ResourceState = "Disabling" + ResourceStateEnableFailed ResourceState = "EnableFailed" + ResourceStateEnabling ResourceState = "Enabling" + ResourceStateRunning ResourceState = "Running" + ResourceStateUpdateFailed ResourceState = "UpdateFailed" + ResourceStateUpdating ResourceState = "Updating" +) + +// PossibleResourceStateValues returns the possible values for the ResourceState const type. +func PossibleResourceStateValues() []ResourceState { + return []ResourceState{ + ResourceStateCreateFailed, + ResourceStateCreating, + ResourceStateDeleteFailed, + ResourceStateDeleting, + ResourceStateDisableFailed, + ResourceStateDisabled, + ResourceStateDisabling, + ResourceStateEnableFailed, + ResourceStateEnabling, + ResourceStateRunning, + ResourceStateUpdateFailed, + ResourceStateUpdating, + } +} + +// SKUName - The type of RedisEnterprise cluster to deploy. Possible values: (EnterpriseE10, EnterpriseFlashF300 etc.) +type SKUName string + +const ( + SKUNameEnterpriseE10 SKUName = "Enterprise_E10" + SKUNameEnterpriseE100 SKUName = "Enterprise_E100" + SKUNameEnterpriseE20 SKUName = "Enterprise_E20" + SKUNameEnterpriseE50 SKUName = "Enterprise_E50" + SKUNameEnterpriseFlashF1500 SKUName = "EnterpriseFlash_F1500" + SKUNameEnterpriseFlashF300 SKUName = "EnterpriseFlash_F300" + SKUNameEnterpriseFlashF700 SKUName = "EnterpriseFlash_F700" +) + +// PossibleSKUNameValues returns the possible values for the SKUName const type. +func PossibleSKUNameValues() []SKUName { + return []SKUName{ + SKUNameEnterpriseE10, + SKUNameEnterpriseE100, + SKUNameEnterpriseE20, + SKUNameEnterpriseE50, + SKUNameEnterpriseFlashF1500, + SKUNameEnterpriseFlashF300, + SKUNameEnterpriseFlashF700, + } +} + +// TLSVersion - The minimum TLS version for the cluster to support, e.g. '1.2' +type TLSVersion string + +const ( + TLSVersionOne0 TLSVersion = "1.0" + TLSVersionOne1 TLSVersion = "1.1" + TLSVersionOne2 TLSVersion = "1.2" +) + +// PossibleTLSVersionValues returns the possible values for the TLSVersion const type. +func PossibleTLSVersionValues() []TLSVersion { + return []TLSVersion{ + TLSVersionOne0, + TLSVersionOne1, + TLSVersionOne2, + } +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/databases_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/databases_client.go new file mode 100644 index 00000000..8b7338db --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/databases_client.go @@ -0,0 +1,840 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// DatabasesClient contains the methods for the Databases group. +// Don't use this type directly, use NewDatabasesClient() instead. +type DatabasesClient struct { + internal *arm.Client + subscriptionID string +} + +// NewDatabasesClient creates a new instance of DatabasesClient with the specified values. +// - subscriptionID - The ID of the target subscription. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewDatabasesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*DatabasesClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &DatabasesClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// BeginCreate - Creates a database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - databaseName - The name of the database. +// - parameters - Parameters supplied to the create or update database operation. +// - options - DatabasesClientBeginCreateOptions contains the optional parameters for the DatabasesClient.BeginCreate method. +func (client *DatabasesClient) BeginCreate(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters Database, options *DatabasesClientBeginCreateOptions) (*runtime.Poller[DatabasesClientCreateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.create(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[DatabasesClientCreateResponse]{ + FinalStateVia: runtime.FinalStateViaOriginalURI, + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[DatabasesClientCreateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Create - Creates a database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *DatabasesClient) create(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters Database, options *DatabasesClientBeginCreateOptions) (*http.Response, error) { + var err error + const operationName = "DatabasesClient.BeginCreate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.createCreateRequest(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// createCreateRequest creates the Create request. +func (client *DatabasesClient) createCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters Database, options *DatabasesClientBeginCreateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/databases/{databaseName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if databaseName == "" { + return nil, errors.New("parameter databaseName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{databaseName}", url.PathEscape(databaseName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, parameters); err != nil { + return nil, err + } + return req, nil +} + +// BeginDelete - Deletes a single database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - databaseName - The name of the database. +// - options - DatabasesClientBeginDeleteOptions contains the optional parameters for the DatabasesClient.BeginDelete method. +func (client *DatabasesClient) BeginDelete(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, options *DatabasesClientBeginDeleteOptions) (*runtime.Poller[DatabasesClientDeleteResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.deleteOperation(ctx, resourceGroupName, clusterName, databaseName, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[DatabasesClientDeleteResponse]{ + FinalStateVia: runtime.FinalStateViaAzureAsyncOp, + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[DatabasesClientDeleteResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Delete - Deletes a single database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *DatabasesClient) deleteOperation(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, options *DatabasesClientBeginDeleteOptions) (*http.Response, error) { + var err error + const operationName = "DatabasesClient.BeginDelete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, resourceGroupName, clusterName, databaseName, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *DatabasesClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, options *DatabasesClientBeginDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/databases/{databaseName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if databaseName == "" { + return nil, errors.New("parameter databaseName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{databaseName}", url.PathEscape(databaseName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// BeginExport - Exports a database file from target database. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - databaseName - The name of the database. +// - parameters - Storage information for exporting into the cluster +// - options - DatabasesClientBeginExportOptions contains the optional parameters for the DatabasesClient.BeginExport method. +func (client *DatabasesClient) BeginExport(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters ExportClusterParameters, options *DatabasesClientBeginExportOptions) (*runtime.Poller[DatabasesClientExportResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.export(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[DatabasesClientExportResponse]{ + FinalStateVia: runtime.FinalStateViaAzureAsyncOp, + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[DatabasesClientExportResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Export - Exports a database file from target database. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *DatabasesClient) export(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters ExportClusterParameters, options *DatabasesClientBeginExportOptions) (*http.Response, error) { + var err error + const operationName = "DatabasesClient.BeginExport" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.exportCreateRequest(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// exportCreateRequest creates the Export request. +func (client *DatabasesClient) exportCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters ExportClusterParameters, options *DatabasesClientBeginExportOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/databases/{databaseName}/export" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if databaseName == "" { + return nil, errors.New("parameter databaseName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{databaseName}", url.PathEscape(databaseName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, parameters); err != nil { + return nil, err + } + return req, nil +} + +// BeginForceUnlink - Forcibly removes the link to the specified database resource. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - databaseName - The name of the database. +// - parameters - Information identifying the database to be unlinked. +// - options - DatabasesClientBeginForceUnlinkOptions contains the optional parameters for the DatabasesClient.BeginForceUnlink +// method. +func (client *DatabasesClient) BeginForceUnlink(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters ForceUnlinkParameters, options *DatabasesClientBeginForceUnlinkOptions) (*runtime.Poller[DatabasesClientForceUnlinkResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.forceUnlink(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[DatabasesClientForceUnlinkResponse]{ + FinalStateVia: runtime.FinalStateViaAzureAsyncOp, + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[DatabasesClientForceUnlinkResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// ForceUnlink - Forcibly removes the link to the specified database resource. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *DatabasesClient) forceUnlink(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters ForceUnlinkParameters, options *DatabasesClientBeginForceUnlinkOptions) (*http.Response, error) { + var err error + const operationName = "DatabasesClient.BeginForceUnlink" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.forceUnlinkCreateRequest(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// forceUnlinkCreateRequest creates the ForceUnlink request. +func (client *DatabasesClient) forceUnlinkCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters ForceUnlinkParameters, options *DatabasesClientBeginForceUnlinkOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/databases/{databaseName}/forceUnlink" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if databaseName == "" { + return nil, errors.New("parameter databaseName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{databaseName}", url.PathEscape(databaseName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, parameters); err != nil { + return nil, err + } + return req, nil +} + +// Get - Gets information about a database in a RedisEnterprise cluster. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - databaseName - The name of the database. +// - options - DatabasesClientGetOptions contains the optional parameters for the DatabasesClient.Get method. +func (client *DatabasesClient) Get(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, options *DatabasesClientGetOptions) (DatabasesClientGetResponse, error) { + var err error + const operationName = "DatabasesClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, clusterName, databaseName, options) + if err != nil { + return DatabasesClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return DatabasesClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return DatabasesClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *DatabasesClient) getCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, options *DatabasesClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/databases/{databaseName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if databaseName == "" { + return nil, errors.New("parameter databaseName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{databaseName}", url.PathEscape(databaseName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *DatabasesClient) getHandleResponse(resp *http.Response) (DatabasesClientGetResponse, error) { + result := DatabasesClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.Database); err != nil { + return DatabasesClientGetResponse{}, err + } + return result, nil +} + +// BeginImport - Imports database files to target database. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - databaseName - The name of the database. +// - parameters - Storage information for importing into the cluster +// - options - DatabasesClientBeginImportOptions contains the optional parameters for the DatabasesClient.BeginImport method. +func (client *DatabasesClient) BeginImport(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters ImportClusterParameters, options *DatabasesClientBeginImportOptions) (*runtime.Poller[DatabasesClientImportResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.importOperation(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[DatabasesClientImportResponse]{ + FinalStateVia: runtime.FinalStateViaAzureAsyncOp, + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[DatabasesClientImportResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Import - Imports database files to target database. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *DatabasesClient) importOperation(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters ImportClusterParameters, options *DatabasesClientBeginImportOptions) (*http.Response, error) { + var err error + const operationName = "DatabasesClient.BeginImport" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.importCreateRequest(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// importCreateRequest creates the Import request. +func (client *DatabasesClient) importCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters ImportClusterParameters, options *DatabasesClientBeginImportOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/databases/{databaseName}/import" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if databaseName == "" { + return nil, errors.New("parameter databaseName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{databaseName}", url.PathEscape(databaseName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, parameters); err != nil { + return nil, err + } + return req, nil +} + +// NewListByClusterPager - Gets all databases in the specified RedisEnterprise cluster. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - options - DatabasesClientListByClusterOptions contains the optional parameters for the DatabasesClient.NewListByClusterPager +// method. +func (client *DatabasesClient) NewListByClusterPager(resourceGroupName string, clusterName string, options *DatabasesClientListByClusterOptions) *runtime.Pager[DatabasesClientListByClusterResponse] { + return runtime.NewPager(runtime.PagingHandler[DatabasesClientListByClusterResponse]{ + More: func(page DatabasesClientListByClusterResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *DatabasesClientListByClusterResponse) (DatabasesClientListByClusterResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "DatabasesClient.NewListByClusterPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listByClusterCreateRequest(ctx, resourceGroupName, clusterName, options) + }, nil) + if err != nil { + return DatabasesClientListByClusterResponse{}, err + } + return client.listByClusterHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByClusterCreateRequest creates the ListByCluster request. +func (client *DatabasesClient) listByClusterCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, options *DatabasesClientListByClusterOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/databases" + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByClusterHandleResponse handles the ListByCluster response. +func (client *DatabasesClient) listByClusterHandleResponse(resp *http.Response) (DatabasesClientListByClusterResponse, error) { + result := DatabasesClientListByClusterResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.DatabaseList); err != nil { + return DatabasesClientListByClusterResponse{}, err + } + return result, nil +} + +// ListKeys - Retrieves the access keys for the RedisEnterprise database. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - databaseName - The name of the database. +// - options - DatabasesClientListKeysOptions contains the optional parameters for the DatabasesClient.ListKeys method. +func (client *DatabasesClient) ListKeys(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, options *DatabasesClientListKeysOptions) (DatabasesClientListKeysResponse, error) { + var err error + const operationName = "DatabasesClient.ListKeys" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.listKeysCreateRequest(ctx, resourceGroupName, clusterName, databaseName, options) + if err != nil { + return DatabasesClientListKeysResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return DatabasesClientListKeysResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return DatabasesClientListKeysResponse{}, err + } + resp, err := client.listKeysHandleResponse(httpResp) + return resp, err +} + +// listKeysCreateRequest creates the ListKeys request. +func (client *DatabasesClient) listKeysCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, options *DatabasesClientListKeysOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/databases/{databaseName}/listKeys" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if databaseName == "" { + return nil, errors.New("parameter databaseName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{databaseName}", url.PathEscape(databaseName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listKeysHandleResponse handles the ListKeys response. +func (client *DatabasesClient) listKeysHandleResponse(resp *http.Response) (DatabasesClientListKeysResponse, error) { + result := DatabasesClientListKeysResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.AccessKeys); err != nil { + return DatabasesClientListKeysResponse{}, err + } + return result, nil +} + +// BeginRegenerateKey - Regenerates the RedisEnterprise database's access keys. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - databaseName - The name of the database. +// - parameters - Specifies which key to regenerate. +// - options - DatabasesClientBeginRegenerateKeyOptions contains the optional parameters for the DatabasesClient.BeginRegenerateKey +// method. +func (client *DatabasesClient) BeginRegenerateKey(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters RegenerateKeyParameters, options *DatabasesClientBeginRegenerateKeyOptions) (*runtime.Poller[DatabasesClientRegenerateKeyResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.regenerateKey(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[DatabasesClientRegenerateKeyResponse]{ + FinalStateVia: runtime.FinalStateViaAzureAsyncOp, + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[DatabasesClientRegenerateKeyResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// RegenerateKey - Regenerates the RedisEnterprise database's access keys. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *DatabasesClient) regenerateKey(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters RegenerateKeyParameters, options *DatabasesClientBeginRegenerateKeyOptions) (*http.Response, error) { + var err error + const operationName = "DatabasesClient.BeginRegenerateKey" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.regenerateKeyCreateRequest(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// regenerateKeyCreateRequest creates the RegenerateKey request. +func (client *DatabasesClient) regenerateKeyCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters RegenerateKeyParameters, options *DatabasesClientBeginRegenerateKeyOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/databases/{databaseName}/regenerateKey" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if databaseName == "" { + return nil, errors.New("parameter databaseName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{databaseName}", url.PathEscape(databaseName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPost, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, parameters); err != nil { + return nil, err + } + return req, nil +} + +// BeginUpdate - Updates a database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - databaseName - The name of the database. +// - parameters - Parameters supplied to the create or update database operation. +// - options - DatabasesClientBeginUpdateOptions contains the optional parameters for the DatabasesClient.BeginUpdate method. +func (client *DatabasesClient) BeginUpdate(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters DatabaseUpdate, options *DatabasesClientBeginUpdateOptions) (*runtime.Poller[DatabasesClientUpdateResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.update(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[DatabasesClientUpdateResponse]{ + FinalStateVia: runtime.FinalStateViaAzureAsyncOp, + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[DatabasesClientUpdateResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Update - Updates a database +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *DatabasesClient) update(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters DatabaseUpdate, options *DatabasesClientBeginUpdateOptions) (*http.Response, error) { + var err error + const operationName = "DatabasesClient.BeginUpdate" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.updateCreateRequest(ctx, resourceGroupName, clusterName, databaseName, parameters, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusAccepted) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// updateCreateRequest creates the Update request. +func (client *DatabasesClient) updateCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, databaseName string, parameters DatabaseUpdate, options *DatabasesClientBeginUpdateOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/databases/{databaseName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if databaseName == "" { + return nil, errors.New("parameter databaseName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{databaseName}", url.PathEscape(databaseName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodPatch, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, parameters); err != nil { + return nil, err + } + return req, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/models.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/models.go new file mode 100644 index 00000000..4eae9efa --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/models.go @@ -0,0 +1,460 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +// AccessKeys - The secret access keys used for authenticating connections to redis +type AccessKeys struct { + // READ-ONLY; The current primary key that clients can use to authenticate + PrimaryKey *string + + // READ-ONLY; The current secondary key that clients can use to authenticate + SecondaryKey *string +} + +// Cluster - Describes the RedisEnterprise cluster +type Cluster struct { + // REQUIRED; The geo-location where the resource lives + Location *string + + // REQUIRED; The SKU to create, which affects price, performance, and features. + SKU *SKU + + // Other properties of the cluster. + Properties *ClusterProperties + + // Resource tags. + Tags map[string]*string + + // The Availability Zones where this cluster will be deployed. + Zones []*string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; The name of the resource + Name *string + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// ClusterList - The response of a list-all operation. +type ClusterList struct { + // List of clusters. + Value []*Cluster + + // READ-ONLY; The URI to fetch the next page of results. + NextLink *string +} + +// ClusterProperties - Properties of RedisEnterprise clusters, as opposed to general resource properties like location, tags +type ClusterProperties struct { + // The minimum TLS version for the cluster to support, e.g. '1.2' + MinimumTLSVersion *TLSVersion + + // READ-ONLY; DNS name of the cluster endpoint + HostName *string + + // READ-ONLY; List of private endpoint connections associated with the specified RedisEnterprise cluster + PrivateEndpointConnections []*PrivateEndpointConnection + + // READ-ONLY; Current provisioning status of the cluster + ProvisioningState *ProvisioningState + + // READ-ONLY; Version of redis the cluster supports, e.g. '6' + RedisVersion *string + + // READ-ONLY; Current resource status of the cluster + ResourceState *ResourceState +} + +// ClusterUpdate - A partial update to the RedisEnterprise cluster +type ClusterUpdate struct { + // Other properties of the cluster. + Properties *ClusterProperties + + // The SKU to create, which affects price, performance, and features. + SKU *SKU + + // Resource tags. + Tags map[string]*string +} + +// Database - Describes a database on the RedisEnterprise cluster +type Database struct { + // Other properties of the database. + Properties *DatabaseProperties + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; The name of the resource + Name *string + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// DatabaseList - The response of a list-all operation. +type DatabaseList struct { + // List of databases + Value []*Database + + // READ-ONLY; The URI to fetch the next page of results. + NextLink *string +} + +// DatabaseProperties - Properties of RedisEnterprise databases, as opposed to general resource properties like location, +// tags +type DatabaseProperties struct { + // Specifies whether redis clients can connect using TLS-encrypted or plaintext redis protocols. Default is TLS-encrypted. + ClientProtocol *Protocol + + // Clustering policy - default is OSSCluster. Specified at create time. + ClusteringPolicy *ClusteringPolicy + + // Redis eviction policy - default is VolatileLRU + EvictionPolicy *EvictionPolicy + + // Optional set of properties to configure geo replication for this database. + GeoReplication *DatabasePropertiesGeoReplication + + // Optional set of redis modules to enable in this database - modules can only be added at creation time. + Modules []*Module + + // Persistence settings + Persistence *Persistence + + // TCP port of the database endpoint. Specified at create time. Defaults to an available port. + Port *int32 + + // READ-ONLY; Current provisioning status of the database + ProvisioningState *ProvisioningState + + // READ-ONLY; Current resource status of the database + ResourceState *ResourceState +} + +// DatabasePropertiesGeoReplication - Optional set of properties to configure geo replication for this database. +type DatabasePropertiesGeoReplication struct { + // Name for the group of linked database resources + GroupNickname *string + + // List of database resources to link with this database + LinkedDatabases []*LinkedDatabase +} + +// DatabaseUpdate - A partial update to the RedisEnterprise database +type DatabaseUpdate struct { + // Properties of the database. + Properties *DatabaseProperties +} + +// ErrorAdditionalInfo - The resource management error additional info. +type ErrorAdditionalInfo struct { + // READ-ONLY; The additional info. + Info any + + // READ-ONLY; The additional info type. + Type *string +} + +// ErrorDetail - The error detail. +type ErrorDetail struct { + // READ-ONLY; The error additional info. + AdditionalInfo []*ErrorAdditionalInfo + + // READ-ONLY; The error code. + Code *string + + // READ-ONLY; The error details. + Details []*ErrorDetail + + // READ-ONLY; The error message. + Message *string + + // READ-ONLY; The error target. + Target *string +} + +// ErrorResponse - Common error response for all Azure Resource Manager APIs to return error details for failed operations. +// (This also follows the OData error response format.). +type ErrorResponse struct { + // The error object. + Error *ErrorDetail +} + +// ExportClusterParameters - Parameters for a Redis Enterprise export operation. +type ExportClusterParameters struct { + // REQUIRED; SAS URI for the target directory to export to + SasURI *string +} + +// ForceUnlinkParameters - Parameters for a Redis Enterprise Active Geo Replication Force Unlink operation. +type ForceUnlinkParameters struct { + // REQUIRED; The resource IDs of the database resources to be unlinked. + IDs []*string +} + +// ImportClusterParameters - Parameters for a Redis Enterprise import operation. +type ImportClusterParameters struct { + // REQUIRED; SAS URIs for the target blobs to import from + SasUris []*string +} + +// LinkedDatabase - Specifies details of a linked database resource. +type LinkedDatabase struct { + // Resource ID of a database resource to link with this database. + ID *string + + // READ-ONLY; State of the link between the database resources. + State *LinkState +} + +// Module - Specifies configuration of a redis module +type Module struct { + // REQUIRED; The name of the module, e.g. 'RedisBloom', 'RediSearch', 'RedisTimeSeries' + Name *string + + // Configuration options for the module, e.g. 'ERRORRATE 0.01 INITIALSIZE 400'. + Args *string + + // READ-ONLY; The version of the module, e.g. '1.0'. + Version *string +} + +// Operation - Details of a REST API operation, returned from the Resource Provider Operations API +type Operation struct { + // Localized display information for this particular operation. + Display *OperationDisplay + + // READ-ONLY; Enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. + ActionType *ActionType + + // READ-ONLY; Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for ARM/control-plane + // operations. + IsDataAction *bool + + // READ-ONLY; The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", + // "Microsoft.Compute/virtualMachines/capture/action" + Name *string + + // READ-ONLY; The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default + // value is "user,system" + Origin *Origin +} + +// OperationDisplay - Localized display information for this particular operation. +type OperationDisplay struct { + // READ-ONLY; The short, localized friendly description of the operation; suitable for tool tips and detailed views. + Description *string + + // READ-ONLY; The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual + // Machine", "Restart Virtual Machine". + Operation *string + + // READ-ONLY; The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft + // Compute". + Provider *string + + // READ-ONLY; The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job + // Schedule Collections". + Resource *string +} + +// OperationListResult - A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to +// get the next set of results. +type OperationListResult struct { + // READ-ONLY; URL to get the next set of operation list results (if there are any). + NextLink *string + + // READ-ONLY; List of operations supported by the resource provider + Value []*Operation +} + +// OperationStatus - The status of a long-running operation. +type OperationStatus struct { + // The end time of the operation. + EndTime *string + + // Error response describing why the operation failed. + Error *ErrorResponse + + // The operation's unique id. + ID *string + + // The operation's name. + Name *string + + // The start time of the operation. + StartTime *string + + // The current status of the operation. + Status *string +} + +// Persistence-related configuration for the RedisEnterprise database +type Persistence struct { + // Sets whether AOF is enabled. + AofEnabled *bool + + // Sets the frequency at which data is written to disk. + AofFrequency *AofFrequency + + // Sets whether RDB is enabled. + RdbEnabled *bool + + // Sets the frequency at which a snapshot of the database is created. + RdbFrequency *RdbFrequency +} + +// PrivateEndpoint - The Private Endpoint resource. +type PrivateEndpoint struct { + // READ-ONLY; The ARM identifier for Private Endpoint + ID *string +} + +// PrivateEndpointConnection - The Private Endpoint Connection resource. +type PrivateEndpointConnection struct { + // Resource properties. + Properties *PrivateEndpointConnectionProperties + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; The name of the resource + Name *string + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// PrivateEndpointConnectionListResult - List of private endpoint connection associated with the specified storage account +type PrivateEndpointConnectionListResult struct { + // Array of private endpoint connections + Value []*PrivateEndpointConnection +} + +// PrivateEndpointConnectionProperties - Properties of the PrivateEndpointConnectProperties. +type PrivateEndpointConnectionProperties struct { + // REQUIRED; A collection of information about the state of the connection between service consumer and provider. + PrivateLinkServiceConnectionState *PrivateLinkServiceConnectionState + + // The resource of private end point. + PrivateEndpoint *PrivateEndpoint + + // READ-ONLY; The provisioning state of the private endpoint connection resource. + ProvisioningState *PrivateEndpointConnectionProvisioningState +} + +// PrivateLinkResource - A private link resource +type PrivateLinkResource struct { + // Resource properties. + Properties *PrivateLinkResourceProperties + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; The name of the resource + Name *string + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// PrivateLinkResourceListResult - A list of private link resources +type PrivateLinkResourceListResult struct { + // Array of private link resources + Value []*PrivateLinkResource +} + +// PrivateLinkResourceProperties - Properties of a private link resource. +type PrivateLinkResourceProperties struct { + // The private link resource Private link DNS zone name. + RequiredZoneNames []*string + + // READ-ONLY; The private link resource group id. + GroupID *string + + // READ-ONLY; The private link resource required member names. + RequiredMembers []*string +} + +// PrivateLinkServiceConnectionState - A collection of information about the state of the connection between service consumer +// and provider. +type PrivateLinkServiceConnectionState struct { + // A message indicating if changes on the service provider require any updates on the consumer. + ActionsRequired *string + + // The reason for approval/rejection of the connection. + Description *string + + // Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. + Status *PrivateEndpointServiceConnectionStatus +} + +// ProxyResource - The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a +// location +type ProxyResource struct { + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; The name of the resource + Name *string + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// RegenerateKeyParameters - Specifies which access keys to reset to a new random value. +type RegenerateKeyParameters struct { + // REQUIRED; Which access key to regenerate. + KeyType *AccessKeyType +} + +// Resource - Common fields that are returned in the response for all Azure Resource Manager resources +type Resource struct { + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; The name of the resource + Name *string + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} + +// SKU parameters supplied to the create RedisEnterprise operation. +type SKU struct { + // REQUIRED; The type of RedisEnterprise cluster to deploy. Possible values: (EnterpriseE10, EnterpriseFlashF300 etc.) + Name *SKUName + + // The size of the RedisEnterprise cluster. Defaults to 2 or 3 depending on SKU. Valid values are (2, 4, 6, …) for Enterprise + // SKUs and (3, 9, 15, …) for Flash SKUs. + Capacity *int32 +} + +// TrackedResource - The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' +// and a 'location' +type TrackedResource struct { + // REQUIRED; The geo-location where the resource lives + Location *string + + // Resource tags. + Tags map[string]*string + + // READ-ONLY; Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} + ID *string + + // READ-ONLY; The name of the resource + Name *string + + // READ-ONLY; The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + Type *string +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/models_serde.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/models_serde.go new file mode 100644 index 00000000..4d6bce04 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/models_serde.go @@ -0,0 +1,1314 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +import ( + "encoding/json" + "fmt" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "reflect" +) + +// MarshalJSON implements the json.Marshaller interface for type AccessKeys. +func (a AccessKeys) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "primaryKey", a.PrimaryKey) + populate(objectMap, "secondaryKey", a.SecondaryKey) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type AccessKeys. +func (a *AccessKeys) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "primaryKey": + err = unpopulate(val, "PrimaryKey", &a.PrimaryKey) + delete(rawMsg, key) + case "secondaryKey": + err = unpopulate(val, "SecondaryKey", &a.SecondaryKey) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", a, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type Cluster. +func (c Cluster) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", c.ID) + populate(objectMap, "location", c.Location) + populate(objectMap, "name", c.Name) + populate(objectMap, "properties", c.Properties) + populate(objectMap, "sku", c.SKU) + populate(objectMap, "tags", c.Tags) + populate(objectMap, "type", c.Type) + populate(objectMap, "zones", c.Zones) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type Cluster. +func (c *Cluster) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &c.ID) + delete(rawMsg, key) + case "location": + err = unpopulate(val, "Location", &c.Location) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &c.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &c.Properties) + delete(rawMsg, key) + case "sku": + err = unpopulate(val, "SKU", &c.SKU) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &c.Tags) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &c.Type) + delete(rawMsg, key) + case "zones": + err = unpopulate(val, "Zones", &c.Zones) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ClusterList. +func (c ClusterList) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", c.NextLink) + populate(objectMap, "value", c.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ClusterList. +func (c *ClusterList) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &c.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &c.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ClusterProperties. +func (c ClusterProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "hostName", c.HostName) + populate(objectMap, "minimumTlsVersion", c.MinimumTLSVersion) + populate(objectMap, "privateEndpointConnections", c.PrivateEndpointConnections) + populate(objectMap, "provisioningState", c.ProvisioningState) + populate(objectMap, "redisVersion", c.RedisVersion) + populate(objectMap, "resourceState", c.ResourceState) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ClusterProperties. +func (c *ClusterProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "hostName": + err = unpopulate(val, "HostName", &c.HostName) + delete(rawMsg, key) + case "minimumTlsVersion": + err = unpopulate(val, "MinimumTLSVersion", &c.MinimumTLSVersion) + delete(rawMsg, key) + case "privateEndpointConnections": + err = unpopulate(val, "PrivateEndpointConnections", &c.PrivateEndpointConnections) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &c.ProvisioningState) + delete(rawMsg, key) + case "redisVersion": + err = unpopulate(val, "RedisVersion", &c.RedisVersion) + delete(rawMsg, key) + case "resourceState": + err = unpopulate(val, "ResourceState", &c.ResourceState) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ClusterUpdate. +func (c ClusterUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "properties", c.Properties) + populate(objectMap, "sku", c.SKU) + populate(objectMap, "tags", c.Tags) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ClusterUpdate. +func (c *ClusterUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "properties": + err = unpopulate(val, "Properties", &c.Properties) + delete(rawMsg, key) + case "sku": + err = unpopulate(val, "SKU", &c.SKU) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &c.Tags) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", c, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type Database. +func (d Database) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", d.ID) + populate(objectMap, "name", d.Name) + populate(objectMap, "properties", d.Properties) + populate(objectMap, "type", d.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type Database. +func (d *Database) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &d.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &d.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &d.Properties) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &d.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DatabaseList. +func (d DatabaseList) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", d.NextLink) + populate(objectMap, "value", d.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DatabaseList. +func (d *DatabaseList) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &d.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &d.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DatabaseProperties. +func (d DatabaseProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "clientProtocol", d.ClientProtocol) + populate(objectMap, "clusteringPolicy", d.ClusteringPolicy) + populate(objectMap, "evictionPolicy", d.EvictionPolicy) + populate(objectMap, "geoReplication", d.GeoReplication) + populate(objectMap, "modules", d.Modules) + populate(objectMap, "persistence", d.Persistence) + populate(objectMap, "port", d.Port) + populate(objectMap, "provisioningState", d.ProvisioningState) + populate(objectMap, "resourceState", d.ResourceState) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DatabaseProperties. +func (d *DatabaseProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "clientProtocol": + err = unpopulate(val, "ClientProtocol", &d.ClientProtocol) + delete(rawMsg, key) + case "clusteringPolicy": + err = unpopulate(val, "ClusteringPolicy", &d.ClusteringPolicy) + delete(rawMsg, key) + case "evictionPolicy": + err = unpopulate(val, "EvictionPolicy", &d.EvictionPolicy) + delete(rawMsg, key) + case "geoReplication": + err = unpopulate(val, "GeoReplication", &d.GeoReplication) + delete(rawMsg, key) + case "modules": + err = unpopulate(val, "Modules", &d.Modules) + delete(rawMsg, key) + case "persistence": + err = unpopulate(val, "Persistence", &d.Persistence) + delete(rawMsg, key) + case "port": + err = unpopulate(val, "Port", &d.Port) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &d.ProvisioningState) + delete(rawMsg, key) + case "resourceState": + err = unpopulate(val, "ResourceState", &d.ResourceState) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DatabasePropertiesGeoReplication. +func (d DatabasePropertiesGeoReplication) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "groupNickname", d.GroupNickname) + populate(objectMap, "linkedDatabases", d.LinkedDatabases) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DatabasePropertiesGeoReplication. +func (d *DatabasePropertiesGeoReplication) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "groupNickname": + err = unpopulate(val, "GroupNickname", &d.GroupNickname) + delete(rawMsg, key) + case "linkedDatabases": + err = unpopulate(val, "LinkedDatabases", &d.LinkedDatabases) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type DatabaseUpdate. +func (d DatabaseUpdate) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "properties", d.Properties) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type DatabaseUpdate. +func (d *DatabaseUpdate) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "properties": + err = unpopulate(val, "Properties", &d.Properties) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", d, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ErrorAdditionalInfo. +func (e ErrorAdditionalInfo) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populateAny(objectMap, "info", e.Info) + populate(objectMap, "type", e.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ErrorAdditionalInfo. +func (e *ErrorAdditionalInfo) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "info": + err = unpopulate(val, "Info", &e.Info) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &e.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ErrorDetail. +func (e ErrorDetail) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "additionalInfo", e.AdditionalInfo) + populate(objectMap, "code", e.Code) + populate(objectMap, "details", e.Details) + populate(objectMap, "message", e.Message) + populate(objectMap, "target", e.Target) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ErrorDetail. +func (e *ErrorDetail) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "additionalInfo": + err = unpopulate(val, "AdditionalInfo", &e.AdditionalInfo) + delete(rawMsg, key) + case "code": + err = unpopulate(val, "Code", &e.Code) + delete(rawMsg, key) + case "details": + err = unpopulate(val, "Details", &e.Details) + delete(rawMsg, key) + case "message": + err = unpopulate(val, "Message", &e.Message) + delete(rawMsg, key) + case "target": + err = unpopulate(val, "Target", &e.Target) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ErrorResponse. +func (e ErrorResponse) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "error", e.Error) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ErrorResponse. +func (e *ErrorResponse) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "error": + err = unpopulate(val, "Error", &e.Error) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ExportClusterParameters. +func (e ExportClusterParameters) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "sasUri", e.SasURI) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ExportClusterParameters. +func (e *ExportClusterParameters) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "sasUri": + err = unpopulate(val, "SasURI", &e.SasURI) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", e, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ForceUnlinkParameters. +func (f ForceUnlinkParameters) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "ids", f.IDs) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ForceUnlinkParameters. +func (f *ForceUnlinkParameters) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "ids": + err = unpopulate(val, "IDs", &f.IDs) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", f, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ImportClusterParameters. +func (i ImportClusterParameters) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "sasUris", i.SasUris) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ImportClusterParameters. +func (i *ImportClusterParameters) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", i, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "sasUris": + err = unpopulate(val, "SasUris", &i.SasUris) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", i, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type LinkedDatabase. +func (l LinkedDatabase) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", l.ID) + populate(objectMap, "state", l.State) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type LinkedDatabase. +func (l *LinkedDatabase) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", l, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &l.ID) + delete(rawMsg, key) + case "state": + err = unpopulate(val, "State", &l.State) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", l, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type Module. +func (m Module) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "args", m.Args) + populate(objectMap, "name", m.Name) + populate(objectMap, "version", m.Version) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type Module. +func (m *Module) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", m, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "args": + err = unpopulate(val, "Args", &m.Args) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &m.Name) + delete(rawMsg, key) + case "version": + err = unpopulate(val, "Version", &m.Version) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", m, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type Operation. +func (o Operation) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "actionType", o.ActionType) + populate(objectMap, "display", o.Display) + populate(objectMap, "isDataAction", o.IsDataAction) + populate(objectMap, "name", o.Name) + populate(objectMap, "origin", o.Origin) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type Operation. +func (o *Operation) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "actionType": + err = unpopulate(val, "ActionType", &o.ActionType) + delete(rawMsg, key) + case "display": + err = unpopulate(val, "Display", &o.Display) + delete(rawMsg, key) + case "isDataAction": + err = unpopulate(val, "IsDataAction", &o.IsDataAction) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &o.Name) + delete(rawMsg, key) + case "origin": + err = unpopulate(val, "Origin", &o.Origin) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type OperationDisplay. +func (o OperationDisplay) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "description", o.Description) + populate(objectMap, "operation", o.Operation) + populate(objectMap, "provider", o.Provider) + populate(objectMap, "resource", o.Resource) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type OperationDisplay. +func (o *OperationDisplay) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "description": + err = unpopulate(val, "Description", &o.Description) + delete(rawMsg, key) + case "operation": + err = unpopulate(val, "Operation", &o.Operation) + delete(rawMsg, key) + case "provider": + err = unpopulate(val, "Provider", &o.Provider) + delete(rawMsg, key) + case "resource": + err = unpopulate(val, "Resource", &o.Resource) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type OperationListResult. +func (o OperationListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "nextLink", o.NextLink) + populate(objectMap, "value", o.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type OperationListResult. +func (o *OperationListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "nextLink": + err = unpopulate(val, "NextLink", &o.NextLink) + delete(rawMsg, key) + case "value": + err = unpopulate(val, "Value", &o.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type OperationStatus. +func (o OperationStatus) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "endTime", o.EndTime) + populate(objectMap, "error", o.Error) + populate(objectMap, "id", o.ID) + populate(objectMap, "name", o.Name) + populate(objectMap, "startTime", o.StartTime) + populate(objectMap, "status", o.Status) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type OperationStatus. +func (o *OperationStatus) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "endTime": + err = unpopulate(val, "EndTime", &o.EndTime) + delete(rawMsg, key) + case "error": + err = unpopulate(val, "Error", &o.Error) + delete(rawMsg, key) + case "id": + err = unpopulate(val, "ID", &o.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &o.Name) + delete(rawMsg, key) + case "startTime": + err = unpopulate(val, "StartTime", &o.StartTime) + delete(rawMsg, key) + case "status": + err = unpopulate(val, "Status", &o.Status) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", o, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type Persistence. +func (p Persistence) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "aofEnabled", p.AofEnabled) + populate(objectMap, "aofFrequency", p.AofFrequency) + populate(objectMap, "rdbEnabled", p.RdbEnabled) + populate(objectMap, "rdbFrequency", p.RdbFrequency) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type Persistence. +func (p *Persistence) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "aofEnabled": + err = unpopulate(val, "AofEnabled", &p.AofEnabled) + delete(rawMsg, key) + case "aofFrequency": + err = unpopulate(val, "AofFrequency", &p.AofFrequency) + delete(rawMsg, key) + case "rdbEnabled": + err = unpopulate(val, "RdbEnabled", &p.RdbEnabled) + delete(rawMsg, key) + case "rdbFrequency": + err = unpopulate(val, "RdbFrequency", &p.RdbFrequency) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PrivateEndpoint. +func (p PrivateEndpoint) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", p.ID) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateEndpoint. +func (p *PrivateEndpoint) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &p.ID) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PrivateEndpointConnection. +func (p PrivateEndpointConnection) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", p.ID) + populate(objectMap, "name", p.Name) + populate(objectMap, "properties", p.Properties) + populate(objectMap, "type", p.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateEndpointConnection. +func (p *PrivateEndpointConnection) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &p.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &p.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &p.Properties) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &p.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PrivateEndpointConnectionListResult. +func (p PrivateEndpointConnectionListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "value", p.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateEndpointConnectionListResult. +func (p *PrivateEndpointConnectionListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "value": + err = unpopulate(val, "Value", &p.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PrivateEndpointConnectionProperties. +func (p PrivateEndpointConnectionProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "privateEndpoint", p.PrivateEndpoint) + populate(objectMap, "privateLinkServiceConnectionState", p.PrivateLinkServiceConnectionState) + populate(objectMap, "provisioningState", p.ProvisioningState) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateEndpointConnectionProperties. +func (p *PrivateEndpointConnectionProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "privateEndpoint": + err = unpopulate(val, "PrivateEndpoint", &p.PrivateEndpoint) + delete(rawMsg, key) + case "privateLinkServiceConnectionState": + err = unpopulate(val, "PrivateLinkServiceConnectionState", &p.PrivateLinkServiceConnectionState) + delete(rawMsg, key) + case "provisioningState": + err = unpopulate(val, "ProvisioningState", &p.ProvisioningState) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PrivateLinkResource. +func (p PrivateLinkResource) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", p.ID) + populate(objectMap, "name", p.Name) + populate(objectMap, "properties", p.Properties) + populate(objectMap, "type", p.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateLinkResource. +func (p *PrivateLinkResource) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &p.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &p.Name) + delete(rawMsg, key) + case "properties": + err = unpopulate(val, "Properties", &p.Properties) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &p.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PrivateLinkResourceListResult. +func (p PrivateLinkResourceListResult) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "value", p.Value) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateLinkResourceListResult. +func (p *PrivateLinkResourceListResult) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "value": + err = unpopulate(val, "Value", &p.Value) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PrivateLinkResourceProperties. +func (p PrivateLinkResourceProperties) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "groupId", p.GroupID) + populate(objectMap, "requiredMembers", p.RequiredMembers) + populate(objectMap, "requiredZoneNames", p.RequiredZoneNames) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateLinkResourceProperties. +func (p *PrivateLinkResourceProperties) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "groupId": + err = unpopulate(val, "GroupID", &p.GroupID) + delete(rawMsg, key) + case "requiredMembers": + err = unpopulate(val, "RequiredMembers", &p.RequiredMembers) + delete(rawMsg, key) + case "requiredZoneNames": + err = unpopulate(val, "RequiredZoneNames", &p.RequiredZoneNames) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type PrivateLinkServiceConnectionState. +func (p PrivateLinkServiceConnectionState) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "actionsRequired", p.ActionsRequired) + populate(objectMap, "description", p.Description) + populate(objectMap, "status", p.Status) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type PrivateLinkServiceConnectionState. +func (p *PrivateLinkServiceConnectionState) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "actionsRequired": + err = unpopulate(val, "ActionsRequired", &p.ActionsRequired) + delete(rawMsg, key) + case "description": + err = unpopulate(val, "Description", &p.Description) + delete(rawMsg, key) + case "status": + err = unpopulate(val, "Status", &p.Status) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type ProxyResource. +func (p ProxyResource) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", p.ID) + populate(objectMap, "name", p.Name) + populate(objectMap, "type", p.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type ProxyResource. +func (p *ProxyResource) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &p.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &p.Name) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &p.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", p, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type RegenerateKeyParameters. +func (r RegenerateKeyParameters) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "keyType", r.KeyType) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type RegenerateKeyParameters. +func (r *RegenerateKeyParameters) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", r, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "keyType": + err = unpopulate(val, "KeyType", &r.KeyType) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", r, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type Resource. +func (r Resource) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", r.ID) + populate(objectMap, "name", r.Name) + populate(objectMap, "type", r.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type Resource. +func (r *Resource) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", r, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &r.ID) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &r.Name) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &r.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", r, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type SKU. +func (s SKU) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "capacity", s.Capacity) + populate(objectMap, "name", s.Name) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type SKU. +func (s *SKU) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "capacity": + err = unpopulate(val, "Capacity", &s.Capacity) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &s.Name) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", s, err) + } + } + return nil +} + +// MarshalJSON implements the json.Marshaller interface for type TrackedResource. +func (t TrackedResource) MarshalJSON() ([]byte, error) { + objectMap := make(map[string]any) + populate(objectMap, "id", t.ID) + populate(objectMap, "location", t.Location) + populate(objectMap, "name", t.Name) + populate(objectMap, "tags", t.Tags) + populate(objectMap, "type", t.Type) + return json.Marshal(objectMap) +} + +// UnmarshalJSON implements the json.Unmarshaller interface for type TrackedResource. +func (t *TrackedResource) UnmarshalJSON(data []byte) error { + var rawMsg map[string]json.RawMessage + if err := json.Unmarshal(data, &rawMsg); err != nil { + return fmt.Errorf("unmarshalling type %T: %v", t, err) + } + for key, val := range rawMsg { + var err error + switch key { + case "id": + err = unpopulate(val, "ID", &t.ID) + delete(rawMsg, key) + case "location": + err = unpopulate(val, "Location", &t.Location) + delete(rawMsg, key) + case "name": + err = unpopulate(val, "Name", &t.Name) + delete(rawMsg, key) + case "tags": + err = unpopulate(val, "Tags", &t.Tags) + delete(rawMsg, key) + case "type": + err = unpopulate(val, "Type", &t.Type) + delete(rawMsg, key) + } + if err != nil { + return fmt.Errorf("unmarshalling type %T: %v", t, err) + } + } + return nil +} + +func populate(m map[string]any, k string, v any) { + if v == nil { + return + } else if azcore.IsNullValue(v) { + m[k] = nil + } else if !reflect.ValueOf(v).IsNil() { + m[k] = v + } +} + +func populateAny(m map[string]any, k string, v any) { + if v == nil { + return + } else if azcore.IsNullValue(v) { + m[k] = nil + } else { + m[k] = v + } +} + +func unpopulate(data json.RawMessage, fn string, v any) error { + if data == nil { + return nil + } + if err := json.Unmarshal(data, v); err != nil { + return fmt.Errorf("struct field %s: %v", fn, err) + } + return nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/operations_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/operations_client.go new file mode 100644 index 00000000..7932dd96 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/operations_client.go @@ -0,0 +1,88 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +import ( + "context" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" +) + +// OperationsClient contains the methods for the Operations group. +// Don't use this type directly, use NewOperationsClient() instead. +type OperationsClient struct { + internal *arm.Client +} + +// NewOperationsClient creates a new instance of OperationsClient with the specified values. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewOperationsClient(credential azcore.TokenCredential, options *arm.ClientOptions) (*OperationsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &OperationsClient{ + internal: cl, + } + return client, nil +} + +// NewListPager - Lists all of the available REST API operations of the Microsoft.Cache provider. +// +// Generated from API version 2022-01-01 +// - options - OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method. +func (client *OperationsClient) NewListPager(options *OperationsClientListOptions) *runtime.Pager[OperationsClientListResponse] { + return runtime.NewPager(runtime.PagingHandler[OperationsClientListResponse]{ + More: func(page OperationsClientListResponse) bool { + return page.NextLink != nil && len(*page.NextLink) > 0 + }, + Fetcher: func(ctx context.Context, page *OperationsClientListResponse) (OperationsClientListResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "OperationsClient.NewListPager") + nextLink := "" + if page != nil { + nextLink = *page.NextLink + } + resp, err := runtime.FetcherForNextLink(ctx, client.internal.Pipeline(), nextLink, func(ctx context.Context) (*policy.Request, error) { + return client.listCreateRequest(ctx, options) + }, nil) + if err != nil { + return OperationsClientListResponse{}, err + } + return client.listHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listCreateRequest creates the List request. +func (client *OperationsClient) listCreateRequest(ctx context.Context, options *OperationsClientListOptions) (*policy.Request, error) { + urlPath := "/providers/Microsoft.Cache/operations" + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listHandleResponse handles the List response. +func (client *OperationsClient) listHandleResponse(resp *http.Response) (OperationsClientListResponse, error) { + result := OperationsClientListResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.OperationListResult); err != nil { + return OperationsClientListResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/operationsstatus_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/operationsstatus_client.go new file mode 100644 index 00000000..2f2fdc77 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/operationsstatus_client.go @@ -0,0 +1,108 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// OperationsStatusClient contains the methods for the OperationsStatus group. +// Don't use this type directly, use NewOperationsStatusClient() instead. +type OperationsStatusClient struct { + internal *arm.Client + subscriptionID string +} + +// NewOperationsStatusClient creates a new instance of OperationsStatusClient with the specified values. +// - subscriptionID - The ID of the target subscription. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewOperationsStatusClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*OperationsStatusClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &OperationsStatusClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Get - Gets the status of operation. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - location - The region the operation is in. +// - operationID - The operation's unique identifier. +// - options - OperationsStatusClientGetOptions contains the optional parameters for the OperationsStatusClient.Get method. +func (client *OperationsStatusClient) Get(ctx context.Context, location string, operationID string, options *OperationsStatusClientGetOptions) (OperationsStatusClientGetResponse, error) { + var err error + const operationName = "OperationsStatusClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, location, operationID, options) + if err != nil { + return OperationsStatusClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return OperationsStatusClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return OperationsStatusClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *OperationsStatusClient) getCreateRequest(ctx context.Context, location string, operationID string, options *OperationsStatusClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/providers/Microsoft.Cache/locations/{location}/operationsStatus/{operationId}" + if location == "" { + return nil, errors.New("parameter location cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{location}", url.PathEscape(location)) + if operationID == "" { + return nil, errors.New("parameter operationID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{operationId}", url.PathEscape(operationID)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *OperationsStatusClient) getHandleResponse(resp *http.Response) (OperationsStatusClientGetResponse, error) { + result := OperationsStatusClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.OperationStatus); err != nil { + return OperationsStatusClientGetResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/options.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/options.go new file mode 100644 index 00000000..9c03b1ec --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/options.go @@ -0,0 +1,140 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +// ClientBeginCreateOptions contains the optional parameters for the Client.BeginCreate method. +type ClientBeginCreateOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// ClientBeginDeleteOptions contains the optional parameters for the Client.BeginDelete method. +type ClientBeginDeleteOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// ClientBeginUpdateOptions contains the optional parameters for the Client.BeginUpdate method. +type ClientBeginUpdateOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// ClientGetOptions contains the optional parameters for the Client.Get method. +type ClientGetOptions struct { + // placeholder for future optional parameters +} + +// ClientListByResourceGroupOptions contains the optional parameters for the Client.NewListByResourceGroupPager method. +type ClientListByResourceGroupOptions struct { + // placeholder for future optional parameters +} + +// ClientListOptions contains the optional parameters for the Client.NewListPager method. +type ClientListOptions struct { + // placeholder for future optional parameters +} + +// DatabasesClientBeginCreateOptions contains the optional parameters for the DatabasesClient.BeginCreate method. +type DatabasesClientBeginCreateOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// DatabasesClientBeginDeleteOptions contains the optional parameters for the DatabasesClient.BeginDelete method. +type DatabasesClientBeginDeleteOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// DatabasesClientBeginExportOptions contains the optional parameters for the DatabasesClient.BeginExport method. +type DatabasesClientBeginExportOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// DatabasesClientBeginForceUnlinkOptions contains the optional parameters for the DatabasesClient.BeginForceUnlink method. +type DatabasesClientBeginForceUnlinkOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// DatabasesClientBeginImportOptions contains the optional parameters for the DatabasesClient.BeginImport method. +type DatabasesClientBeginImportOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// DatabasesClientBeginRegenerateKeyOptions contains the optional parameters for the DatabasesClient.BeginRegenerateKey method. +type DatabasesClientBeginRegenerateKeyOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// DatabasesClientBeginUpdateOptions contains the optional parameters for the DatabasesClient.BeginUpdate method. +type DatabasesClientBeginUpdateOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// DatabasesClientGetOptions contains the optional parameters for the DatabasesClient.Get method. +type DatabasesClientGetOptions struct { + // placeholder for future optional parameters +} + +// DatabasesClientListByClusterOptions contains the optional parameters for the DatabasesClient.NewListByClusterPager method. +type DatabasesClientListByClusterOptions struct { + // placeholder for future optional parameters +} + +// DatabasesClientListKeysOptions contains the optional parameters for the DatabasesClient.ListKeys method. +type DatabasesClientListKeysOptions struct { + // placeholder for future optional parameters +} + +// OperationsClientListOptions contains the optional parameters for the OperationsClient.NewListPager method. +type OperationsClientListOptions struct { + // placeholder for future optional parameters +} + +// OperationsStatusClientGetOptions contains the optional parameters for the OperationsStatusClient.Get method. +type OperationsStatusClientGetOptions struct { + // placeholder for future optional parameters +} + +// PrivateEndpointConnectionsClientBeginPutOptions contains the optional parameters for the PrivateEndpointConnectionsClient.BeginPut +// method. +type PrivateEndpointConnectionsClientBeginPutOptions struct { + // Resumes the LRO from the provided token. + ResumeToken string +} + +// PrivateEndpointConnectionsClientDeleteOptions contains the optional parameters for the PrivateEndpointConnectionsClient.Delete +// method. +type PrivateEndpointConnectionsClientDeleteOptions struct { + // placeholder for future optional parameters +} + +// PrivateEndpointConnectionsClientGetOptions contains the optional parameters for the PrivateEndpointConnectionsClient.Get +// method. +type PrivateEndpointConnectionsClientGetOptions struct { + // placeholder for future optional parameters +} + +// PrivateEndpointConnectionsClientListOptions contains the optional parameters for the PrivateEndpointConnectionsClient.NewListPager +// method. +type PrivateEndpointConnectionsClientListOptions struct { + // placeholder for future optional parameters +} + +// PrivateLinkResourcesClientListByClusterOptions contains the optional parameters for the PrivateLinkResourcesClient.NewListByClusterPager +// method. +type PrivateLinkResourcesClientListByClusterOptions struct { + // placeholder for future optional parameters +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/privateendpointconnections_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/privateendpointconnections_client.go new file mode 100644 index 00000000..2375b17f --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/privateendpointconnections_client.go @@ -0,0 +1,325 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// PrivateEndpointConnectionsClient contains the methods for the PrivateEndpointConnections group. +// Don't use this type directly, use NewPrivateEndpointConnectionsClient() instead. +type PrivateEndpointConnectionsClient struct { + internal *arm.Client + subscriptionID string +} + +// NewPrivateEndpointConnectionsClient creates a new instance of PrivateEndpointConnectionsClient with the specified values. +// - subscriptionID - The ID of the target subscription. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewPrivateEndpointConnectionsClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*PrivateEndpointConnectionsClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &PrivateEndpointConnectionsClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// Delete - Deletes the specified private endpoint connection associated with the RedisEnterprise cluster. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - privateEndpointConnectionName - The name of the private endpoint connection associated with the Azure resource +// - options - PrivateEndpointConnectionsClientDeleteOptions contains the optional parameters for the PrivateEndpointConnectionsClient.Delete +// method. +func (client *PrivateEndpointConnectionsClient) Delete(ctx context.Context, resourceGroupName string, clusterName string, privateEndpointConnectionName string, options *PrivateEndpointConnectionsClientDeleteOptions) (PrivateEndpointConnectionsClientDeleteResponse, error) { + var err error + const operationName = "PrivateEndpointConnectionsClient.Delete" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.deleteCreateRequest(ctx, resourceGroupName, clusterName, privateEndpointConnectionName, options) + if err != nil { + return PrivateEndpointConnectionsClientDeleteResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return PrivateEndpointConnectionsClientDeleteResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK, http.StatusNoContent) { + err = runtime.NewResponseError(httpResp) + return PrivateEndpointConnectionsClientDeleteResponse{}, err + } + return PrivateEndpointConnectionsClientDeleteResponse{}, nil +} + +// deleteCreateRequest creates the Delete request. +func (client *PrivateEndpointConnectionsClient) deleteCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, privateEndpointConnectionName string, options *PrivateEndpointConnectionsClientDeleteOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/privateEndpointConnections/{privateEndpointConnectionName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if privateEndpointConnectionName == "" { + return nil, errors.New("parameter privateEndpointConnectionName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{privateEndpointConnectionName}", url.PathEscape(privateEndpointConnectionName)) + req, err := runtime.NewRequest(ctx, http.MethodDelete, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// Get - Gets the specified private endpoint connection associated with the RedisEnterprise cluster. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - privateEndpointConnectionName - The name of the private endpoint connection associated with the Azure resource +// - options - PrivateEndpointConnectionsClientGetOptions contains the optional parameters for the PrivateEndpointConnectionsClient.Get +// method. +func (client *PrivateEndpointConnectionsClient) Get(ctx context.Context, resourceGroupName string, clusterName string, privateEndpointConnectionName string, options *PrivateEndpointConnectionsClientGetOptions) (PrivateEndpointConnectionsClientGetResponse, error) { + var err error + const operationName = "PrivateEndpointConnectionsClient.Get" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.getCreateRequest(ctx, resourceGroupName, clusterName, privateEndpointConnectionName, options) + if err != nil { + return PrivateEndpointConnectionsClientGetResponse{}, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return PrivateEndpointConnectionsClientGetResponse{}, err + } + if !runtime.HasStatusCode(httpResp, http.StatusOK) { + err = runtime.NewResponseError(httpResp) + return PrivateEndpointConnectionsClientGetResponse{}, err + } + resp, err := client.getHandleResponse(httpResp) + return resp, err +} + +// getCreateRequest creates the Get request. +func (client *PrivateEndpointConnectionsClient) getCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, privateEndpointConnectionName string, options *PrivateEndpointConnectionsClientGetOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/privateEndpointConnections/{privateEndpointConnectionName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if privateEndpointConnectionName == "" { + return nil, errors.New("parameter privateEndpointConnectionName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{privateEndpointConnectionName}", url.PathEscape(privateEndpointConnectionName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// getHandleResponse handles the Get response. +func (client *PrivateEndpointConnectionsClient) getHandleResponse(resp *http.Response) (PrivateEndpointConnectionsClientGetResponse, error) { + result := PrivateEndpointConnectionsClientGetResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.PrivateEndpointConnection); err != nil { + return PrivateEndpointConnectionsClientGetResponse{}, err + } + return result, nil +} + +// NewListPager - Lists all the private endpoint connections associated with the RedisEnterprise cluster. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - options - PrivateEndpointConnectionsClientListOptions contains the optional parameters for the PrivateEndpointConnectionsClient.NewListPager +// method. +func (client *PrivateEndpointConnectionsClient) NewListPager(resourceGroupName string, clusterName string, options *PrivateEndpointConnectionsClientListOptions) *runtime.Pager[PrivateEndpointConnectionsClientListResponse] { + return runtime.NewPager(runtime.PagingHandler[PrivateEndpointConnectionsClientListResponse]{ + More: func(page PrivateEndpointConnectionsClientListResponse) bool { + return false + }, + Fetcher: func(ctx context.Context, page *PrivateEndpointConnectionsClientListResponse) (PrivateEndpointConnectionsClientListResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "PrivateEndpointConnectionsClient.NewListPager") + req, err := client.listCreateRequest(ctx, resourceGroupName, clusterName, options) + if err != nil { + return PrivateEndpointConnectionsClientListResponse{}, err + } + resp, err := client.internal.Pipeline().Do(req) + if err != nil { + return PrivateEndpointConnectionsClientListResponse{}, err + } + if !runtime.HasStatusCode(resp, http.StatusOK) { + return PrivateEndpointConnectionsClientListResponse{}, runtime.NewResponseError(resp) + } + return client.listHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listCreateRequest creates the List request. +func (client *PrivateEndpointConnectionsClient) listCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, options *PrivateEndpointConnectionsClientListOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/privateEndpointConnections" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listHandleResponse handles the List response. +func (client *PrivateEndpointConnectionsClient) listHandleResponse(resp *http.Response) (PrivateEndpointConnectionsClientListResponse, error) { + result := PrivateEndpointConnectionsClientListResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.PrivateEndpointConnectionListResult); err != nil { + return PrivateEndpointConnectionsClientListResponse{}, err + } + return result, nil +} + +// BeginPut - Updates the state of the specified private endpoint connection associated with the RedisEnterprise cluster. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - privateEndpointConnectionName - The name of the private endpoint connection associated with the Azure resource +// - properties - The private endpoint connection properties. +// - options - PrivateEndpointConnectionsClientBeginPutOptions contains the optional parameters for the PrivateEndpointConnectionsClient.BeginPut +// method. +func (client *PrivateEndpointConnectionsClient) BeginPut(ctx context.Context, resourceGroupName string, clusterName string, privateEndpointConnectionName string, properties PrivateEndpointConnection, options *PrivateEndpointConnectionsClientBeginPutOptions) (*runtime.Poller[PrivateEndpointConnectionsClientPutResponse], error) { + if options == nil || options.ResumeToken == "" { + resp, err := client.put(ctx, resourceGroupName, clusterName, privateEndpointConnectionName, properties, options) + if err != nil { + return nil, err + } + poller, err := runtime.NewPoller(resp, client.internal.Pipeline(), &runtime.NewPollerOptions[PrivateEndpointConnectionsClientPutResponse]{ + Tracer: client.internal.Tracer(), + }) + return poller, err + } else { + return runtime.NewPollerFromResumeToken(options.ResumeToken, client.internal.Pipeline(), &runtime.NewPollerFromResumeTokenOptions[PrivateEndpointConnectionsClientPutResponse]{ + Tracer: client.internal.Tracer(), + }) + } +} + +// Put - Updates the state of the specified private endpoint connection associated with the RedisEnterprise cluster. +// If the operation fails it returns an *azcore.ResponseError type. +// +// Generated from API version 2022-01-01 +func (client *PrivateEndpointConnectionsClient) put(ctx context.Context, resourceGroupName string, clusterName string, privateEndpointConnectionName string, properties PrivateEndpointConnection, options *PrivateEndpointConnectionsClientBeginPutOptions) (*http.Response, error) { + var err error + const operationName = "PrivateEndpointConnectionsClient.BeginPut" + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, operationName) + ctx, endSpan := runtime.StartSpan(ctx, operationName, client.internal.Tracer(), nil) + defer func() { endSpan(err) }() + req, err := client.putCreateRequest(ctx, resourceGroupName, clusterName, privateEndpointConnectionName, properties, options) + if err != nil { + return nil, err + } + httpResp, err := client.internal.Pipeline().Do(req) + if err != nil { + return nil, err + } + if !runtime.HasStatusCode(httpResp, http.StatusCreated) { + err = runtime.NewResponseError(httpResp) + return nil, err + } + return httpResp, nil +} + +// putCreateRequest creates the Put request. +func (client *PrivateEndpointConnectionsClient) putCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, privateEndpointConnectionName string, properties PrivateEndpointConnection, options *PrivateEndpointConnectionsClientBeginPutOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/privateEndpointConnections/{privateEndpointConnectionName}" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + if privateEndpointConnectionName == "" { + return nil, errors.New("parameter privateEndpointConnectionName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{privateEndpointConnectionName}", url.PathEscape(privateEndpointConnectionName)) + req, err := runtime.NewRequest(ctx, http.MethodPut, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + if err := runtime.MarshalAsJSON(req, properties); err != nil { + return nil, err + } + return req, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/privatelinkresources_client.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/privatelinkresources_client.go new file mode 100644 index 00000000..b003f080 --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/privatelinkresources_client.go @@ -0,0 +1,110 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +import ( + "context" + "errors" + "github.com/Azure/azure-sdk-for-go/sdk/azcore" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/arm" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime" + "net/http" + "net/url" + "strings" +) + +// PrivateLinkResourcesClient contains the methods for the PrivateLinkResources group. +// Don't use this type directly, use NewPrivateLinkResourcesClient() instead. +type PrivateLinkResourcesClient struct { + internal *arm.Client + subscriptionID string +} + +// NewPrivateLinkResourcesClient creates a new instance of PrivateLinkResourcesClient with the specified values. +// - subscriptionID - The ID of the target subscription. +// - credential - used to authorize requests. Usually a credential from azidentity. +// - options - pass nil to accept the default values. +func NewPrivateLinkResourcesClient(subscriptionID string, credential azcore.TokenCredential, options *arm.ClientOptions) (*PrivateLinkResourcesClient, error) { + cl, err := arm.NewClient(moduleName, moduleVersion, credential, options) + if err != nil { + return nil, err + } + client := &PrivateLinkResourcesClient{ + subscriptionID: subscriptionID, + internal: cl, + } + return client, nil +} + +// NewListByClusterPager - Gets the private link resources that need to be created for a RedisEnterprise cluster. +// +// Generated from API version 2022-01-01 +// - resourceGroupName - The name of the resource group. The name is case insensitive. +// - clusterName - The name of the RedisEnterprise cluster. +// - options - PrivateLinkResourcesClientListByClusterOptions contains the optional parameters for the PrivateLinkResourcesClient.NewListByClusterPager +// method. +func (client *PrivateLinkResourcesClient) NewListByClusterPager(resourceGroupName string, clusterName string, options *PrivateLinkResourcesClientListByClusterOptions) *runtime.Pager[PrivateLinkResourcesClientListByClusterResponse] { + return runtime.NewPager(runtime.PagingHandler[PrivateLinkResourcesClientListByClusterResponse]{ + More: func(page PrivateLinkResourcesClientListByClusterResponse) bool { + return false + }, + Fetcher: func(ctx context.Context, page *PrivateLinkResourcesClientListByClusterResponse) (PrivateLinkResourcesClientListByClusterResponse, error) { + ctx = context.WithValue(ctx, runtime.CtxAPINameKey{}, "PrivateLinkResourcesClient.NewListByClusterPager") + req, err := client.listByClusterCreateRequest(ctx, resourceGroupName, clusterName, options) + if err != nil { + return PrivateLinkResourcesClientListByClusterResponse{}, err + } + resp, err := client.internal.Pipeline().Do(req) + if err != nil { + return PrivateLinkResourcesClientListByClusterResponse{}, err + } + if !runtime.HasStatusCode(resp, http.StatusOK) { + return PrivateLinkResourcesClientListByClusterResponse{}, runtime.NewResponseError(resp) + } + return client.listByClusterHandleResponse(resp) + }, + Tracer: client.internal.Tracer(), + }) +} + +// listByClusterCreateRequest creates the ListByCluster request. +func (client *PrivateLinkResourcesClient) listByClusterCreateRequest(ctx context.Context, resourceGroupName string, clusterName string, options *PrivateLinkResourcesClientListByClusterOptions) (*policy.Request, error) { + urlPath := "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cache/redisEnterprise/{clusterName}/privateLinkResources" + if resourceGroupName == "" { + return nil, errors.New("parameter resourceGroupName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{resourceGroupName}", url.PathEscape(resourceGroupName)) + if clusterName == "" { + return nil, errors.New("parameter clusterName cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{clusterName}", url.PathEscape(clusterName)) + if client.subscriptionID == "" { + return nil, errors.New("parameter client.subscriptionID cannot be empty") + } + urlPath = strings.ReplaceAll(urlPath, "{subscriptionId}", url.PathEscape(client.subscriptionID)) + req, err := runtime.NewRequest(ctx, http.MethodGet, runtime.JoinPaths(client.internal.Endpoint(), urlPath)) + if err != nil { + return nil, err + } + reqQP := req.Raw().URL.Query() + reqQP.Set("api-version", "2022-01-01") + req.Raw().URL.RawQuery = reqQP.Encode() + req.Raw().Header["Accept"] = []string{"application/json"} + return req, nil +} + +// listByClusterHandleResponse handles the ListByCluster response. +func (client *PrivateLinkResourcesClient) listByClusterHandleResponse(resp *http.Response) (PrivateLinkResourcesClientListByClusterResponse, error) { + result := PrivateLinkResourcesClientListByClusterResponse{} + if err := runtime.UnmarshalAsJSON(resp, &result.PrivateLinkResourceListResult); err != nil { + return PrivateLinkResourcesClientListByClusterResponse{}, err + } + return result, nil +} diff --git a/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/response_types.go b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/response_types.go new file mode 100644 index 00000000..80d7c0eb --- /dev/null +++ b/vendor/github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise/response_types.go @@ -0,0 +1,141 @@ +//go:build go1.18 +// +build go1.18 + +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. See License.txt in the project root for license information. +// Code generated by Microsoft (R) AutoRest Code Generator. DO NOT EDIT. +// Changes may cause incorrect behavior and will be lost if the code is regenerated. + +package armredisenterprise + +// ClientCreateResponse contains the response from method Client.BeginCreate. +type ClientCreateResponse struct { + // Describes the RedisEnterprise cluster + Cluster +} + +// ClientDeleteResponse contains the response from method Client.BeginDelete. +type ClientDeleteResponse struct { + // placeholder for future response values +} + +// ClientGetResponse contains the response from method Client.Get. +type ClientGetResponse struct { + // Describes the RedisEnterprise cluster + Cluster +} + +// ClientListByResourceGroupResponse contains the response from method Client.NewListByResourceGroupPager. +type ClientListByResourceGroupResponse struct { + // The response of a list-all operation. + ClusterList +} + +// ClientListResponse contains the response from method Client.NewListPager. +type ClientListResponse struct { + // The response of a list-all operation. + ClusterList +} + +// ClientUpdateResponse contains the response from method Client.BeginUpdate. +type ClientUpdateResponse struct { + // Describes the RedisEnterprise cluster + Cluster +} + +// DatabasesClientCreateResponse contains the response from method DatabasesClient.BeginCreate. +type DatabasesClientCreateResponse struct { + // Describes a database on the RedisEnterprise cluster + Database +} + +// DatabasesClientDeleteResponse contains the response from method DatabasesClient.BeginDelete. +type DatabasesClientDeleteResponse struct { + // placeholder for future response values +} + +// DatabasesClientExportResponse contains the response from method DatabasesClient.BeginExport. +type DatabasesClientExportResponse struct { + // placeholder for future response values +} + +// DatabasesClientForceUnlinkResponse contains the response from method DatabasesClient.BeginForceUnlink. +type DatabasesClientForceUnlinkResponse struct { + // placeholder for future response values +} + +// DatabasesClientGetResponse contains the response from method DatabasesClient.Get. +type DatabasesClientGetResponse struct { + // Describes a database on the RedisEnterprise cluster + Database +} + +// DatabasesClientImportResponse contains the response from method DatabasesClient.BeginImport. +type DatabasesClientImportResponse struct { + // placeholder for future response values +} + +// DatabasesClientListByClusterResponse contains the response from method DatabasesClient.NewListByClusterPager. +type DatabasesClientListByClusterResponse struct { + // The response of a list-all operation. + DatabaseList +} + +// DatabasesClientListKeysResponse contains the response from method DatabasesClient.ListKeys. +type DatabasesClientListKeysResponse struct { + // The secret access keys used for authenticating connections to redis + AccessKeys +} + +// DatabasesClientRegenerateKeyResponse contains the response from method DatabasesClient.BeginRegenerateKey. +type DatabasesClientRegenerateKeyResponse struct { + // The secret access keys used for authenticating connections to redis + AccessKeys +} + +// DatabasesClientUpdateResponse contains the response from method DatabasesClient.BeginUpdate. +type DatabasesClientUpdateResponse struct { + // Describes a database on the RedisEnterprise cluster + Database +} + +// OperationsClientListResponse contains the response from method OperationsClient.NewListPager. +type OperationsClientListResponse struct { + // A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. + OperationListResult +} + +// OperationsStatusClientGetResponse contains the response from method OperationsStatusClient.Get. +type OperationsStatusClientGetResponse struct { + // The status of a long-running operation. + OperationStatus +} + +// PrivateEndpointConnectionsClientDeleteResponse contains the response from method PrivateEndpointConnectionsClient.Delete. +type PrivateEndpointConnectionsClientDeleteResponse struct { + // placeholder for future response values +} + +// PrivateEndpointConnectionsClientGetResponse contains the response from method PrivateEndpointConnectionsClient.Get. +type PrivateEndpointConnectionsClientGetResponse struct { + // The Private Endpoint Connection resource. + PrivateEndpointConnection +} + +// PrivateEndpointConnectionsClientListResponse contains the response from method PrivateEndpointConnectionsClient.NewListPager. +type PrivateEndpointConnectionsClientListResponse struct { + // List of private endpoint connection associated with the specified storage account + PrivateEndpointConnectionListResult +} + +// PrivateEndpointConnectionsClientPutResponse contains the response from method PrivateEndpointConnectionsClient.BeginPut. +type PrivateEndpointConnectionsClientPutResponse struct { + // The Private Endpoint Connection resource. + PrivateEndpointConnection +} + +// PrivateLinkResourcesClientListByClusterResponse contains the response from method PrivateLinkResourcesClient.NewListByClusterPager. +type PrivateLinkResourcesClientListByClusterResponse struct { + // A list of private link resources + PrivateLinkResourceListResult +} diff --git a/vendor/github.com/magodo/aztft/internal/client/client.go b/vendor/github.com/magodo/aztft/internal/client/client.go index 9c08220c..39a78dff 100644 --- a/vendor/github.com/magodo/aztft/internal/client/client.go +++ b/vendor/github.com/magodo/aztft/internal/client/client.go @@ -33,9 +33,11 @@ import ( "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/netapp/armnetapp/v7" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/operationalinsights/armoperationalinsights" + "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/paloaltonetworksngfw/armpanngfw" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicesbackup/v4" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicessiterecovery/v2" + "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armdeploymentscripts/v2" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/securityinsights/armsecurityinsights/v2" "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/sql/armsql" @@ -716,3 +718,11 @@ func (b *ClientBuilder) NewSqlJobsClient(subscriptionId string) (*armsql.JobsCli func (b *ClientBuilder) NewWebPubSubsClient(subscriptionId string) (*armwebpubsub.Client, error) { return armwebpubsub.NewClient(subscriptionId, b.Cred, &b.ClientOpt) } + +func (b *ClientBuilder) NewOracleAutonomousDatabaseClient(subscriptionId string) (*armoracledatabase.AutonomousDatabasesClient, error) { + return armoracledatabase.NewAutonomousDatabasesClient(subscriptionId, b.Cred, &b.ClientOpt) +} + +func (b *ClientBuilder) NewRedisEnterpriseDatabaseClient(subscriptionId string) (*armredisenterprise.DatabasesClient, error) { + return armredisenterprise.NewDatabasesClient(subscriptionId, b.Cred, &b.ClientOpt) +} diff --git a/vendor/github.com/magodo/aztft/internal/populate/populate.go b/vendor/github.com/magodo/aztft/internal/populate/populate.go index cc9100e3..0591c0fc 100644 --- a/vendor/github.com/magodo/aztft/internal/populate/populate.go +++ b/vendor/github.com/magodo/aztft/internal/populate/populate.go @@ -24,6 +24,7 @@ var populaters = map[string]populateFunc{ "azurerm_container_app_environment": populateContainerAppEnv, "azurerm_mssql_job": populateMssqlJob, "azurerm_stream_analytics_job": populateStreamAnalyticsJob, + "azurerm_managed_redis": populateRedisEnterpriseDatabase, } func NeedsAPI(rt string) bool { diff --git a/vendor/github.com/magodo/aztft/internal/populate/populate_redisenterprise_database.go b/vendor/github.com/magodo/aztft/internal/populate/populate_redisenterprise_database.go new file mode 100644 index 00000000..d8fc672f --- /dev/null +++ b/vendor/github.com/magodo/aztft/internal/populate/populate_redisenterprise_database.go @@ -0,0 +1,34 @@ +package populate + +import ( + "context" + "fmt" + + "github.com/magodo/armid" + "github.com/magodo/aztft/internal/client" +) + +func populateRedisEnterpriseDatabase(b *client.ClientBuilder, id armid.ResourceId) ([]armid.ResourceId, error) { + resourceGroupId := id.RootScope().(*armid.ResourceGroup) + client, err := b.NewRedisEnterpriseDatabaseClient(resourceGroupId.SubscriptionId) + if err != nil { + return nil, err + } + resp, err := client.Get(context.Background(), resourceGroupId.Name, id.Names()[0], "default", nil) + if err != nil { + return nil, fmt.Errorf("retrieving %q: %v", id, err) + } + props := resp.Properties + if props == nil { + return nil, nil + } + + if props.GeoReplication == nil || props.GeoReplication.LinkedDatabases == nil || len(props.GeoReplication.LinkedDatabases) == 0 { + return nil, nil + } + + eid := id.Clone().(*armid.ScopedResourceId) + eid.AttrTypes = append(eid.AttrTypes, "replications") + eid.AttrNames = append(eid.AttrNames, "default") + return []armid.ResourceId{eid}, nil +} diff --git a/vendor/github.com/magodo/aztft/internal/resmap/map.json b/vendor/github.com/magodo/aztft/internal/resmap/map.json index fae29a53..978dfcd1 100644 --- a/vendor/github.com/magodo/aztft/internal/resmap/map.json +++ b/vendor/github.com/magodo/aztft/internal/resmap/map.json @@ -912,6 +912,70 @@ ] } }, + "azurerm_api_management_workspace_api_version_set": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.ApiManagement", + "types": [ + "service", + "workspaces", + "apiVersionSets" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.ApiManagement/service/workspaces/apiVersionSets" + ] + } + }, + "azurerm_api_management_workspace_certificate": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.ApiManagement", + "types": [ + "service", + "workspaces", + "certificates" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.ApiManagement/service/workspaces/certificates" + ] + } + }, + "azurerm_api_management_workspace_policy": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.ApiManagement", + "types": [ + "service", + "workspaces", + "policies" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.ApiManagement/service/workspaces" + ] + } + }, + "azurerm_api_management_workspace_policy_fragment": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.ApiManagement", + "types": [ + "service", + "workspaces", + "policyFragments" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.ApiManagement/service/workspaces/policyFragments" + ] + } + }, "azurerm_app_configuration": { "management_plane": { "scopes": [ @@ -8288,6 +8352,37 @@ ] } }, + "azurerm_managed_redis": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.Cache", + "types": [ + "redisEnterprise", + "databasese" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.Cache/redisEnterprise" + ] + } + }, + "azurerm_managed_redis_geo_replication": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.Cache", + "types": [ + "redisEnterprise", + "databasese", + "replications" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.Cache/redisEnterprise" + ] + } + }, "azurerm_management_group": { "management_plane": { "provider": "Microsoft.Management", @@ -8616,6 +8711,21 @@ ] } }, + "azurerm_mongo_cluster_firewall_rule": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.DocumentDB", + "types": [ + "mongoClusters", + "firewallRules" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.DocumentDB/mongoClusters/firewallRules" + ] + } + }, "azurerm_monitor_aad_diagnostic_setting": { "management_plane": { "scopes": [ @@ -9952,6 +10062,23 @@ ] } }, + "azurerm_network_manager_routing_rule": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.Network", + "types": [ + "networkManagers", + "routingConfigurations", + "ruleCollections", + "rules" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.Network/networkManagers/routingConfigurations/ruleCollections/rules" + ] + } + }, "azurerm_network_manager_routing_rule_collection": { "management_plane": { "scopes": [ @@ -10293,6 +10420,34 @@ ] } }, + "azurerm_oracle_autonomous_database_clone_from_backup": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Oracle.Database", + "types": [ + "autonomousDatabases" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Oracle.Database/autonomousDatabases" + ] + } + }, + "azurerm_oracle_autonomous_database_clone_from_database": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Oracle.Database", + "types": [ + "autonomousDatabases" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Oracle.Database/autonomousDatabases" + ] + } + }, "azurerm_oracle_cloud_vm_cluster": { "management_plane": { "scopes": [ @@ -10321,6 +10476,34 @@ ] } }, + "azurerm_oracle_exascale_database_storage_vault": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Oracle.Database", + "types": [ + "exascaleDbStorageVaults" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Oracle.Database/exascaleDbStorageVaults" + ] + } + }, + "azurerm_oracle_resource_anchor": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Oracle.Database", + "types": [ + "resourceAnchors" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Oracle.Database/resourceAnchors" + ] + } + }, "azurerm_orbital_contact": { "management_plane": { "scopes": [ @@ -11238,6 +11421,8 @@ } }, "azurerm_redis_enterprise_cluster": { + "is_removed": true, + "remove_reason": "Deprecated", "management_plane": { "scopes": [ "/subscriptions/resourceGroups" @@ -11252,6 +11437,8 @@ } }, "azurerm_redis_enterprise_database": { + "is_removed": true, + "remove_reason": "Deprecated", "management_plane": { "scopes": [ "/subscriptions/resourceGroups" @@ -12884,20 +13071,6 @@ ] } }, - "azurerm_spatial_anchors_account": { - "management_plane": { - "scopes": [ - "/subscriptions/resourceGroups" - ], - "provider": "Microsoft.MixedReality", - "types": [ - "spatialAnchorsAccounts" - ], - "import_specs": [ - "/subscriptions/resourceGroups/Microsoft.MixedReality/spatialAnchorsAccounts" - ] - } - }, "azurerm_spring_cloud_accelerator": { "management_plane": { "scopes": [ diff --git a/vendor/github.com/magodo/aztft/internal/resmap/map_gen.json b/vendor/github.com/magodo/aztft/internal/resmap/map_gen.json index 9a01b906..0ed456ad 100644 --- a/vendor/github.com/magodo/aztft/internal/resmap/map_gen.json +++ b/vendor/github.com/magodo/aztft/internal/resmap/map_gen.json @@ -907,6 +907,69 @@ ] } }, + "azurerm_api_management_workspace_api_version_set": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.ApiManagement", + "types": [ + "service", + "workspaces", + "apiVersionSets" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.ApiManagement/service/workspaces/apiVersionSets" + ] + } + }, + "azurerm_api_management_workspace_certificate": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.ApiManagement", + "types": [ + "service", + "workspaces", + "certificates" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.ApiManagement/service/workspaces/certificates" + ] + } + }, + "azurerm_api_management_workspace_policy": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.ApiManagement", + "types": [ + "service", + "workspaces" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.ApiManagement/service/workspaces" + ] + } + }, + "azurerm_api_management_workspace_policy_fragment": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.ApiManagement", + "types": [ + "service", + "workspaces", + "policyFragments" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.ApiManagement/service/workspaces/policyFragments" + ] + } + }, "azurerm_app_configuration": { "management_plane": { "scopes": [ @@ -8253,6 +8316,34 @@ ] } }, + "azurerm_managed_redis": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.Cache", + "types": [ + "redisEnterprise" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.Cache/redisEnterprise" + ] + } + }, + "azurerm_managed_redis_geo_replication": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.Cache", + "types": [ + "redisEnterprise" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.Cache/redisEnterprise" + ] + } + }, "azurerm_management_group": { "management_plane": { "provider": "Microsoft.Management", @@ -8596,6 +8687,21 @@ ] } }, + "azurerm_mongo_cluster_firewall_rule": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.DocumentDB", + "types": [ + "mongoClusters", + "firewallRules" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.DocumentDB/mongoClusters/firewallRules" + ] + } + }, "azurerm_monitor_aad_diagnostic_setting": { "management_plane": { "scopes": [ @@ -9827,6 +9933,23 @@ ] } }, + "azurerm_network_manager_routing_rule": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Microsoft.Network", + "types": [ + "networkManagers", + "routingConfigurations", + "ruleCollections", + "rules" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Microsoft.Network/networkManagers/routingConfigurations/ruleCollections/rules" + ] + } + }, "azurerm_network_manager_routing_rule_collection": { "management_plane": { "scopes": [ @@ -10168,6 +10291,34 @@ ] } }, + "azurerm_oracle_autonomous_database_clone_from_backup": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Oracle.Database", + "types": [ + "autonomousDatabases" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Oracle.Database/autonomousDatabases" + ] + } + }, + "azurerm_oracle_autonomous_database_clone_from_database": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Oracle.Database", + "types": [ + "autonomousDatabases" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Oracle.Database/autonomousDatabases" + ] + } + }, "azurerm_oracle_cloud_vm_cluster": { "management_plane": { "scopes": [ @@ -10196,6 +10347,34 @@ ] } }, + "azurerm_oracle_exascale_database_storage_vault": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Oracle.Database", + "types": [ + "exascaleDbStorageVaults" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Oracle.Database/exascaleDbStorageVaults" + ] + } + }, + "azurerm_oracle_resource_anchor": { + "management_plane": { + "scopes": [ + "/subscriptions/resourceGroups" + ], + "provider": "Oracle.Database", + "types": [ + "resourceAnchors" + ], + "import_specs": [ + "/subscriptions/resourceGroups/Oracle.Database/resourceAnchors" + ] + } + }, "azurerm_orbital_contact": { "management_plane": { "scopes": [ @@ -12755,20 +12934,6 @@ ] } }, - "azurerm_spatial_anchors_account": { - "management_plane": { - "scopes": [ - "/subscriptions/resourceGroups" - ], - "provider": "Microsoft.MixedReality", - "types": [ - "spatialAnchorsAccounts" - ], - "import_specs": [ - "/subscriptions/resourceGroups/Microsoft.MixedReality/spatialAnchorsAccounts" - ] - } - }, "azurerm_spring_cloud_accelerator": { "management_plane": { "scopes": [ diff --git a/vendor/github.com/magodo/aztft/internal/resolve/resolve.go b/vendor/github.com/magodo/aztft/internal/resolve/resolve.go index 82a5e56a..fca3fc62 100644 --- a/vendor/github.com/magodo/aztft/internal/resolve/resolve.go +++ b/vendor/github.com/magodo/aztft/internal/resolve/resolve.go @@ -217,6 +217,9 @@ var Resolvers = map[string]map[string]resolver{ "/MICROSOFT.SIGNALRSERVICE/WEBPUBSUB": { "/SUBSCRIPTIONS/RESOURCEGROUPS": webPubSubResolver{}, }, + "/ORACLE.DATABASE/AUTONOMOUSDATABASES": { + "/SUBSCRIPTIONS/RESOURCEGROUPS": oracleAutonomousDatabaseResolver{}, + }, } type ResolveError struct { diff --git a/vendor/github.com/magodo/aztft/internal/resolve/resolve_appservice_site.go b/vendor/github.com/magodo/aztft/internal/resolve/resolve_appservice_site.go index 1bd801f1..93e68536 100644 --- a/vendor/github.com/magodo/aztft/internal/resolve/resolve_appservice_site.go +++ b/vendor/github.com/magodo/aztft/internal/resolve/resolve_appservice_site.go @@ -14,13 +14,11 @@ type appServiceSitesResolver struct{} func (appServiceSitesResolver) ResourceTypes() []string { return []string{ "azurerm_logic_app_standard", + "azurerm_function_app_flex_consumption", "azurerm_linux_function_app", "azurerm_windows_function_app", "azurerm_linux_web_app", "azurerm_windows_web_app", - - // Although this is put here, it won't be resolved to for now. - "azurerm_function_app_flex_consumption", } } @@ -40,11 +38,12 @@ func (appServiceSitesResolver) Resolve(b *client.ClientBuilder, id armid.Resourc } // The value of kind for different resource are listed below: // - // azurerm_logic_app_standard : functionapp,workflowapp or functionapp,linux,container,workflowapp - // azurerm_linux_function_app : functionapp,linux - // azurerm_windows_function_app : functionapp - // azurerm_linux_web_app : app,linux - // azurerm_windows_web_app : app,container,windows + // azurerm_logic_app_standard : functionapp,workflowapp or functionapp,linux,container,workflowapp + // azurerm_windows_function_app : functionapp + // azurerm_linux_web_app : app,linux + // azurerm_windows_web_app : app,container,windows + // azurerm_function_app_flex_consumption: functionapp,linux + // azurerm_linux_function_app : functionapp,linux kinds := strings.Split(*kind, ",") m := map[string]bool{} @@ -57,11 +56,16 @@ func (appServiceSitesResolver) Resolve(b *client.ClientBuilder, id armid.Resourc } if m["functionapp"] { - if m["linux"] { - - return "azurerm_linux_function_app", nil + if _, ok := m["linux"]; !ok { + return "azurerm_windows_function_app", nil + } + // For "functionapp,linux" kind, it can be either azurerm_linux_function_app or azurerm_function_app_flex_consumption. + if props := resp.Properties; props != nil { + if sku := props.SKU; sku != nil && *sku == "FlexConsumption" { + return "azurerm_function_app_flex_consumption", nil + } } - return "azurerm_windows_function_app", nil + return "azurerm_linux_function_app", nil } if m["app"] { diff --git a/vendor/github.com/magodo/aztft/internal/resolve/resolve_oracle_autonomous_database.go b/vendor/github.com/magodo/aztft/internal/resolve/resolve_oracle_autonomous_database.go new file mode 100644 index 00000000..e301678d --- /dev/null +++ b/vendor/github.com/magodo/aztft/internal/resolve/resolve_oracle_autonomous_database.go @@ -0,0 +1,46 @@ +package resolve + +import ( + "context" + "fmt" + + "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase" + "github.com/magodo/armid" + "github.com/magodo/aztft/internal/client" +) + +type oracleAutonomousDatabaseResolver struct{} + +func (oracleAutonomousDatabaseResolver) ResourceTypes() []string { + return []string{ + "azurerm_oracle_autonomous_database", + "azurerm_oracle_autonomous_database_clone_from_database", + "azurerm_oracle_autonomous_database_clone_from_backup", + } +} + +func (oracleAutonomousDatabaseResolver) Resolve(b *client.ClientBuilder, id armid.ResourceId) (string, error) { + resourceGroupId := id.RootScope().(*armid.ResourceGroup) + client, err := b.NewOracleAutonomousDatabaseClient(resourceGroupId.SubscriptionId) + if err != nil { + return "", err + } + resp, err := client.Get(context.Background(), resourceGroupId.Name, id.Names()[0], nil) + if err != nil { + return "", fmt.Errorf("retrieving %q: %v", id, err) + } + props := resp.Properties + if props == nil { + return "", fmt.Errorf("unexpected nil properties in response") + } + switch props.(type) { + case *armoracledatabase.AutonomousDatabaseProperties: + return "azurerm_oracle_autonomous_database", nil + case *armoracledatabase.AutonomousDatabaseCloneProperties: + return "azurerm_oracle_autonomous_database_clone_from_database", nil + case *armoracledatabase.AutonomousDatabaseFromBackupTimestampProperties: + return "azurerm_oracle_autonomous_database_clone_from_backup", nil + default: + return "", fmt.Errorf("unknown database properties type: %T", props) + } +} diff --git a/vendor/github.com/magodo/aztft/internal/tfid/tfid.go b/vendor/github.com/magodo/aztft/internal/tfid/tfid.go index fec62894..90bfbc68 100644 --- a/vendor/github.com/magodo/aztft/internal/tfid/tfid.go +++ b/vendor/github.com/magodo/aztft/internal/tfid/tfid.go @@ -168,9 +168,15 @@ func StaticBuild(id armid.ResourceId, rt string) (string, error) { "azurerm_subnet_network_security_group_association", "azurerm_subnet_route_table_association", "azurerm_mssql_job_schedule", - "azurerm_stream_analytics_job_storage_account": + "azurerm_stream_analytics_job_storage_account", + "azurerm_api_management_workspace_policy", + "azurerm_managed_redis": id = id.Parent() + // Grand parent ID + case "azurerm_managed_redis_geo_replication": + id = id.Parent().Parent() + // Parent Scope case "azurerm_eventgrid_partner_configuration": id = id.ParentScope() diff --git a/vendor/modules.txt b/vendor/modules.txt index eb88b65f..631f7876 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -125,6 +125,9 @@ github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/network/armnetwork/v6 # github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/operationalinsights/armoperationalinsights v1.2.0 ## explicit; go 1.18 github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/operationalinsights/armoperationalinsights +# github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase v1.1.0 +## explicit; go 1.23.0 +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/oracledatabase/armoracledatabase # github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/paloaltonetworksngfw/armpanngfw v1.1.0 ## explicit; go 1.18 github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/paloaltonetworksngfw/armpanngfw @@ -134,6 +137,9 @@ github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecove # github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicessiterecovery/v2 v2.4.0 ## explicit; go 1.23.0 github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/recoveryservices/armrecoveryservicessiterecovery/v2 +# github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise v1.2.0 +## explicit; go 1.18 +github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/redisenterprise/armredisenterprise # github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armdeploymentscripts/v2 v2.1.0 ## explicit; go 1.18 github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armdeploymentscripts/v2 @@ -305,7 +311,7 @@ github.com/huandu/xstrings # github.com/magodo/armid v0.0.0-20250724105512-5cedfa9dd8e2 ## explicit; go 1.18 github.com/magodo/armid -# github.com/magodo/aztft v0.3.1-0.20250911234526-2507731ccf2e +# github.com/magodo/aztft v0.3.1-0.20251115232612-bd81c936d4f1 ## explicit; go 1.23.0 github.com/magodo/aztft/aztft github.com/magodo/aztft/internal/client