Open joris-weijters opened 1 year ago
1.3.4
3.29.0
azurerm_mysql_flexible_server
# in this code I follow the example of https://learn.microsoft.com/en-us/azure/mysql/flexible-server/quickstart-create-terraform?tabs=azure-cli#implement-the-terraform-code resource "azurerm_resource_group" "rg" { name = "rg-example-test-mysql" location = "West Europe" tags = { "Author" = "JW" "Owner" = "JW" } } # Generate random value for the name resource "random_string" "name" { length = 8 lower = true numeric = false special = false upper = false } # Generate random value for the login password resource "random_password" "password" { length = 8 lower = true min_lower = 1 min_numeric = 1 min_special = 1 min_upper = 1 numeric = true override_special = "_" special = true upper = true } # Create VNET resource "azurerm_virtual_network" "mysql-vnet" { name = "mysql-network" location = azurerm_resource_group.rg.location resource_group_name = azurerm_resource_group.rg.name address_space = ["10.0.0.0/16"] dns_servers = ["10.0.0.4", "10.0.0.5"] tags = { environment = "test" author : "JW" } } # Manages the Subnet resource "azurerm_subnet" "sn_mysql" { address_prefixes = ["10.0.1.0/24"] name = "subnet_mysql" resource_group_name = azurerm_resource_group.rg.name virtual_network_name = azurerm_virtual_network.mysql-vnet.name service_endpoints = ["Microsoft.Storage"] delegation { name = "fs" service_delegation { name = "Microsoft.DBforMySQL/flexibleServers" actions = [ "Microsoft.Network/virtualNetworks/subnets/join/action", ] } } } # Enables you to manage Private DNS zones within Azure DNS resource "azurerm_private_dns_zone" "mysqldns" { name = "privatelink.mysql.database.azure.com" resource_group_name = azurerm_resource_group.rg.name } # Enables you to manage Private DNS zones within Azure DNS resource "azurerm_private_dns_zone" "exampledns" { name = "example.mysql.database.azure.com" resource_group_name = azurerm_resource_group.rg.name } # Enables you to manage Private DNS zone Virtual Network Links resource "azurerm_private_dns_zone_virtual_network_link" "mysqldnslink" { name = "mysqlfsVnetZone.com" private_dns_zone_name = azurerm_private_dns_zone.mysqldns.name resource_group_name = azurerm_resource_group.rg.name virtual_network_id = azurerm_virtual_network.mysql-vnet.id } # Enables you to manage Private DNS zone Virtual Network Links resource "azurerm_private_dns_zone_virtual_network_link" "examplednslink" { name = "examplefsVnetZone.com" private_dns_zone_name = azurerm_private_dns_zone.exampledns.name resource_group_name = azurerm_resource_group.rg.name virtual_network_id = azurerm_virtual_network.mysql-vnet.id } # Manages the MySQL Flexible Server resource "azurerm_mysql_flexible_server" "test_mysql" { location = azurerm_resource_group.rg.location name = "mysql-mconsole-accept-003" resource_group_name = azurerm_resource_group.rg.name administrator_login = random_string.name.result administrator_password = random_password.password.result backup_retention_days = 7 delegated_subnet_id = azurerm_subnet.sn_mysql.id geo_redundant_backup_enabled = false private_dns_zone_id = azurerm_private_dns_zone.exampledns.id sku_name = "GP_Standard_D4ds_v4" version = "8.0.21" zone = "2" high_availability { mode = "ZoneRedundant" standby_availability_zone = "3" } maintenance_window { day_of_week = 0 start_hour = 8 start_minute = 0 } storage { iops = 360 size_gb = 20 } depends_on = [azurerm_private_dns_zone_virtual_network_link.mysqldnslink] } output "mysql_example_fqdn" { value = azurerm_mysql_flexible_server.test_mysql.fqdn }
run was successful however unexpected result
I expected the output to be: mysql-mconsole-accept-003.example.mysql.database.azure.com
The output is: mysql-mconsole-accept-003.mysql.database.azure.com
No response
https://learn.microsoft.com/en-us/azure/mysql/flexible-server/quickstart-create-terraform?tabs=azure-cli#implement-the-terraform-code
Thanks for raising this issue. Seems it's by service API design since Terraform doesn't change that value returned by azure rest api.
Is there an existing issue for this?
Community Note
Terraform Version
1.3.4
AzureRM Provider Version
3.29.0
Affected Resource(s)/Data Source(s)
azurerm_mysql_flexible_server
Terraform Configuration Files
Debug Output/Panic Output
Expected Behaviour
I expected the output to be: mysql-mconsole-accept-003.example.mysql.database.azure.com
Actual Behaviour
The output is: mysql-mconsole-accept-003.mysql.database.azure.com
Steps to Reproduce
No response
Important Factoids
No response
References
https://learn.microsoft.com/en-us/azure/mysql/flexible-server/quickstart-create-terraform?tabs=azure-cli#implement-the-terraform-code