first commit

This commit is contained in:
Yuris Cakranegara
2025-06-06 12:01:54 +10:00
commit cac26957a8
42 changed files with 2235 additions and 0 deletions

49
main.tf Normal file
View File

@@ -0,0 +1,49 @@
// Root module that orchestrates all environments
// This unified approach keeps a single entry point while organizing by function
// Network infrastructure
module "network" {
source = "./environments/network"
// Cloudflare variables
cloudflare_api_token = var.cloudflare_api_token
cloudflare_account_id = var.cloudflare_account_id
cloudflare_zone_id = var.cloudflare_zone_id
domain = var.domain
}
// Core infrastructure (monitoring, globals)
module "core" {
source = "./environments/core"
depends_on = [module.network]
timezone = var.timezone
// Watchtower variables
watchtower_enable_notifications = var.watchtower_enable_notifications
watchtower_notification_url = var.watchtower_notification_url
}
// Application services
module "services" {
source = "./environments/services"
depends_on = [module.core, module.network]
timezone = var.timezone
puid = var.puid
pgid = var.pgid
data_dir = var.data_dir
// ActualBudget variables
actualbudget_port = var.actualbudget_port
// EmulatorJS variables
emulatorjs_frontend_port = var.emulatorjs_frontend_port
emulatorjs_config_port = var.emulatorjs_config_port
emulatorjs_backend_port = var.emulatorjs_backend_port
// Docker network variables
default_networks = [module.network.homelab_docker_network_name]
}