Skip to content

databases/mysql_flexible_server

Overview

This page documents the Terraform module implementation, key configuration surfaces, and how it integrates with CAF.

Dependency diagram (Mermaid)

graph TD azurecaf_name.mysql_flexible_database["azurecaf_name.mysql_flexible_database"] azurecaf_name.mysql_flexible_firewall_rule["azurecaf_name.mysql_flexible_firewall_rule"] azurecaf_name.mysql_flexible_server["azurecaf_name.mysql_flexible_server"] azurerm_key_vault_secret.mysql_administrator_password["azurerm_key_vault_secret.mysql_administrator_password"] azurerm_key_vault_secret.mysql_administrator_username["azurerm_key_vault_secret.mysql_administrator_username"] azurerm_key_vault_secret.mysql_database_name["azurerm_key_vault_secret.mysql_database_name"] azurerm_key_vault_secret.mysql_fqdn["azurerm_key_vault_secret.mysql_fqdn"] azurerm_mysql_flexible_database.mysql["azurerm_mysql_flexible_database.mysql"] azurerm_mysql_flexible_server.mysql["azurerm_mysql_flexible_server.mysql"] azurerm_mysql_flexible_server_configuration.mysql["azurerm_mysql_flexible_server_configuration.mysql"] azurerm_mysql_flexible_server_firewall_rule.mysql["azurerm_mysql_flexible_server_firewall_rule.mysql"] module.diagnostics["module.diagnostics"] module.private_endpoint["module.private_endpoint"] random_password.mysql_administrator_password["random_password.mysql_administrator_password"] remote:diagnostics["remote:diagnostics"] remote:keyvault_id["remote:keyvault_id"] remote:private_dns_zone_id["remote:private_dns_zone_id"] remote:subnet_id["remote:subnet_id"] time_sleep.database_configuration["time_sleep.database_configuration"] time_sleep.server_configuration["time_sleep.server_configuration"] azurerm_key_vault_secret.mysql_administrator_password --> azurecaf_name.mysql_flexible_server azurerm_key_vault_secret.mysql_administrator_password --> random_password.mysql_administrator_password azurerm_key_vault_secret.mysql_administrator_password --> remote:keyvault_id azurerm_key_vault_secret.mysql_administrator_username --> azurecaf_name.mysql_flexible_server azurerm_key_vault_secret.mysql_administrator_username --> remote:keyvault_id azurerm_key_vault_secret.mysql_database_name --> azurerm_mysql_flexible_server.mysql azurerm_key_vault_secret.mysql_database_name --> remote:keyvault_id azurerm_key_vault_secret.mysql_fqdn --> azurecaf_name.mysql_flexible_server azurerm_key_vault_secret.mysql_fqdn --> azurerm_mysql_flexible_server.mysql azurerm_key_vault_secret.mysql_fqdn --> remote:keyvault_id azurerm_mysql_flexible_database.mysql --> azurecaf_name.mysql_flexible_database azurerm_mysql_flexible_database.mysql --> azurerm_mysql_flexible_server.mysql azurerm_mysql_flexible_database.mysql --> time_sleep.database_configuration azurerm_mysql_flexible_server.mysql --> azurecaf_name.mysql_flexible_server azurerm_mysql_flexible_server.mysql --> azurerm_key_vault_secret.mysql_administrator_password azurerm_mysql_flexible_server.mysql --> remote:private_dns_zone_id azurerm_mysql_flexible_server.mysql --> remote:subnet_id azurerm_mysql_flexible_server_configuration.mysql --> azurerm_mysql_flexible_server.mysql azurerm_mysql_flexible_server_configuration.mysql --> time_sleep.server_configuration azurerm_mysql_flexible_server_firewall_rule.mysql --> azurecaf_name.mysql_flexible_firewall_rule azurerm_mysql_flexible_server_firewall_rule.mysql --> azurerm_mysql_flexible_server.mysql module.diagnostics --> azurerm_mysql_flexible_server.mysql module.diagnostics --> remote:diagnostics module.private_endpoint --> azurerm_mysql_flexible_server.mysql time_sleep.database_configuration --> azurerm_mysql_flexible_server.mysql time_sleep.server_configuration --> azurerm_mysql_flexible_server.mysql

Module Reference

Category: databases
Path: modules/databases/mysql_flexible_server
Azure Resources: azurecaf_name, azurerm_key_vault_secret, azurerm_mysql_flexible_database, azurerm_mysql_flexible_server, azurerm_mysql_flexible_server_configuration, azurerm_mysql_flexible_server_firewall_rule, random_password, time_sleep

Inputs

Name Description Type Required Default Validation
"base_tags" "(Optional) Base tags for the resource to be inherited from the resource group." map(any) no {} -
"client_config" "Client configuration object (see module README.md)." any no {} -
"global_settings" "Global settings object (see module README.md)" any no {} -
"resource_group_name" "(Required) The name of the Resource Group where the resource should exist. Changing this forces a new resource to be... any yes - -
"remote_objects" "Remote objects configuration." any no {} -
"settings" "(Required) Used to handle passthrough parameters." any no {} -
"location" "(Required) Specifies the supported Azure location where to create the resource. Changing this forces a new resource ... string yes - -
"private_dns" any no {} -
"private_endpoints" any yes - -
"resource_groups" any yes - -
"resource_group" any yes - -
"vnets" any yes - -
"inherit_base_tags" "Base tags for the resource to be inherited from the resource group." bool yes - -

Outputs

Name Description Sensitive Value
"id" "ID of the MYSQL flexible server" - azurerm_mysql_flexible_server.mysql.id
"location" "Azure Region where the resource exists" - var.location
"mysql_flexible_server_administrator_username" "Administrator username of MYSQL flexible server" true azurerm_mysql_flexible_server.mysql.administrator_login
"mysql_flexible_server_administrator_password" "Administrator password of MYSQL flexible server" true azurerm_mysql_flexible_server.mysql.administrator_password
"mysql_flexible_server_id" "ID of the MYSQL flexible server" - azurerm_mysql_flexible_server.mysql.id
"mysql_flexible_server_fqdn" "FQDN of the MYSQL flexible server" - azurerm_mysql_flexible_server.mysql.fqdn
"mysql_flexible_server_name" "Name of the MYSQL flexible server" - azurerm_mysql_flexible_server.mysql.name
"mysql_flexible_server_public_network_access_enabled" "Is public network access enabled?" - azurerm_mysql_flexible_server.mysql.public_network_access_enabled
"mysql_flexible_server_configuration_id" "ID of the MYSQL flexible server configuration" - {for k, v in azurerm_mysql_flexible_server_configuration.mysql : k => v.id}
"mysql_flexible_server_database_id" "ID of the MYSQL flexible server database" - {for k, v in azurerm_mysql_flexible_database.mysql : k => v.id}
"mysql_flexible_server_firewall_rule_id" "ID of the MYSQL flexible server firewall rule" - {for k, v in azurerm_mysql_flexible_server_firewall_rule.mysql : k => v.id}
"resource_group_name" "Name of the Resource Group where the resource exists." - var.resource_group_name

Sources

  • modules/databases/mysql_flexible_server/configuration.tf
  • modules/databases/mysql_flexible_server/database.tf
  • modules/databases/mysql_flexible_server/diagnostics.tf
  • modules/databases/mysql_flexible_server/firewall_rule.tf
  • modules/databases/mysql_flexible_server/locals.tf
  • modules/databases/mysql_flexible_server/main.tf
  • modules/databases/mysql_flexible_server/outputs.tf
  • modules/databases/mysql_flexible_server/private_endpoints.tf
  • modules/databases/mysql_flexible_server/server.tf
  • modules/databases/mysql_flexible_server/variables.tf