Refactoring

This commit is contained in:
2025-01-17 20:38:24 -06:00
parent 540b38de30
commit ab56211602
68 changed files with 3201 additions and 2616 deletions

View File

@@ -1,23 +1,124 @@
resource "azurerm_static_web_app" "static_web_app" {
name = var.STATIC_WEB_APP_NAME
resource_group_name = data.azurerm_resource_group.resource_group.name
location = var.REGION
sku_size = "Free"
sku_tier = "Free"
data "azurerm_client_config" "current" {
}
resource "azurerm_dns_cname_record" "dns_cname_record_app" {
name = var.APP_SUBDOMAIN_NAME
zone_name = data.azurerm_dns_zone.dns_zone.name
resource "azurerm_log_analytics_workspace" "log_analytics_workspace" {
name = module.environment.log_analytics_workspace_name
location = data.azurerm_resource_group.resource_group.location
resource_group_name = data.azurerm_resource_group.resource_group.name
ttl = 14400
record = azurerm_static_web_app.static_web_app.default_host_name
sku = "PerGB2018"
retention_in_days = 30
}
resource "azurerm_static_web_app_custom_domain" "static_web_app_custom_domain" {
static_web_app_id = azurerm_static_web_app.static_web_app.id
domain_name = "${var.APP_SUBDOMAIN_NAME}.${var.DOMAIN_NAME}"
validation_type = "cname-delegation"
resource "azurerm_container_app_environment" "container_app_environment" {
name = module.environment.container_app_environment_name
location = data.azurerm_resource_group.resource_group.location
resource_group_name = data.azurerm_resource_group.resource_group.name
log_analytics_workspace_id = azurerm_log_analytics_workspace.log_analytics_workspace.id
}
depends_on = [ azurerm_dns_cname_record.dns_cname_record_app ]
}
resource "azurerm_container_app" "container_app_api" {
name = module.environment.container_app_api_name
container_app_environment_id = azurerm_container_app_environment.container_app_environment.id
resource_group_name = data.azurerm_resource_group.resource_group.name
revision_mode = "Single"
registry {
server = "index.docker.io"
username = var.DOCKER_IO_USERNAME
password_secret_name = "docker-io-password"
}
dapr {
app_id = module.environment.container_app_api_dapr_app_id
app_port = 80
app_protocol = "http"
}
template {
min_replicas = 0
max_replicas = 2
container {
name = module.environment.container_app_api_container_name
image = module.environment.container_app_api_container_image
cpu = 0.25
memory = "0.5Gi"
}
}
ingress {
allow_insecure_connections = false
external_enabled = true
target_port = 80
transport = "auto"
traffic_weight {
latest_revision = true
percentage = 100
}
}
secret {
name = "docker-io-password"
value = var.DOCKER_IO_PASSWORD
}
lifecycle {
ignore_changes = [ template[0].container[0].image ]
}
}
resource "azurerm_container_app" "container_app_app" {
name = module.environment.container_app_app_name
container_app_environment_id = azurerm_container_app_environment.container_app_environment.id
resource_group_name = data.azurerm_resource_group.resource_group.name
revision_mode = "Single"
registry {
server = "index.docker.io"
username = var.DOCKER_IO_USERNAME
password_secret_name = "docker-io-password"
}
template {
min_replicas = 0
max_replicas = 2
container {
name = module.environment.container_app_app_container_name
image = module.environment.container_app_app_container_image
cpu = 0.25
memory = "0.5Gi"
}
}
ingress {
allow_insecure_connections = false
external_enabled = true
target_port = 80
transport = "auto"
traffic_weight {
latest_revision = true
percentage = 100
}
}
secret {
name = "docker-io-password"
value = var.DOCKER_IO_PASSWORD
}
lifecycle {
ignore_changes = [ template[0].container[0].image ]
}
}
# resource "azurerm_container_app_custom_domain" "custom_domain" {
# name = trimsuffix(trimprefix(azurerm_dns_txt_record.dns_txt_record.fqdn, "asuid."), ".")
# container_app_id = azurerm_container_app.container_app_app.id
# lifecycle {
# ignore_changes = [ certificate_binding_type, container_app_environment_certificate_id ]
# }
# }