first commit
This commit is contained in:
49
main.tf
Normal file
49
main.tf
Normal 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]
|
||||
}
|
||||
Reference in New Issue
Block a user