Opinionated.tf/products/mysql/mysql.tf

30 lines
1.2 KiB
Terraform
Raw Permalink Normal View History

2025-01-21 12:38:58 +00:00
module "service" {
source = "../../docker/service"
2025-02-14 20:29:33 +00:00
enable = var.enable
2025-01-21 12:38:58 +00:00
image = "${var.mysql_image}:${var.mysql_version}"
stack_name = var.stack_name
2025-01-21 17:18:44 +00:00
service_name = var.service_name
2025-01-21 12:38:58 +00:00
networks = var.networks
healthcheck = ["CMD", "/usr/local/bin/healthcheck.sh", "--connect", "--mariadbupgrade", "--innodb_initialized"]
2025-01-21 17:18:44 +00:00
healthcheck_start_period = "30s"
2025-01-21 12:38:58 +00:00
healthcheck_interval = "10s"
healthcheck_timeout = "5s"
environment_variables = {
MARIADB_ROOT_PASSWORD = local.root_password
MARIADB_USER = local.username
MARIADB_PASSWORD = local.password
MARIADB_DATABASE = local.database
}
volumes = local.volumes
mounts = local.mounts
ports = var.ports
placement_constraints = var.placement_constraints
2025-02-14 20:30:49 +00:00
parallelism = 1
start_first = false
2025-01-21 12:38:58 +00:00
}
locals {
volumes = var.data_persist_path == null ? {
"data" = "/var/lib/mysql"
} : {}
2025-01-25 01:48:26 +00:00
mounts = var.data_persist_path != null ? zipmap([var.data_persist_path], ["/var/lib/mysql"]) : {}
2025-01-21 12:38:58 +00:00
}