first commit
This commit is contained in:
36
environments/services/main.tf
Normal file
36
environments/services/main.tf
Normal file
@@ -0,0 +1,36 @@
|
||||
// Application services environment
|
||||
// Contains configurations for all application services
|
||||
|
||||
// Import global Terraform settings
|
||||
terraform {
|
||||
# Include backend configuration if needed
|
||||
# backend "local" { ... }
|
||||
}
|
||||
|
||||
locals {
|
||||
module_dir = "../../modules"
|
||||
}
|
||||
|
||||
module "actualbudget" {
|
||||
source = "${local.module_dir}/20-services-apps/actualbudget"
|
||||
|
||||
container_name = "actualbudget"
|
||||
timezone = var.timezone
|
||||
data_volume_path = "${var.data_dir}/actual/data"
|
||||
port = var.actualbudget_port
|
||||
networks = var.default_networks
|
||||
}
|
||||
|
||||
module "emulatorjs" {
|
||||
source = "${local.module_dir}/20-services-apps/emulatorjs"
|
||||
|
||||
container_name = "emulatorjs"
|
||||
timezone = var.timezone
|
||||
puid = var.puid
|
||||
pgid = var.pgid
|
||||
config_volume_path = "${var.data_dir}/emulatorjs/config"
|
||||
data_volume_path = "${var.data_dir}/emulatorjs/data"
|
||||
frontend_port = var.emulatorjs_frontend_port
|
||||
config_port = var.emulatorjs_config_port
|
||||
backend_port = var.emulatorjs_backend_port
|
||||
}
|
||||
38
environments/services/outputs.tf
Normal file
38
environments/services/outputs.tf
Normal file
@@ -0,0 +1,38 @@
|
||||
// Services environment outputs
|
||||
|
||||
// ActualBudget
|
||||
output "actualbudget_container_name" {
|
||||
description = "The name of the ActualBudget container"
|
||||
value = module.actualbudget.container_name
|
||||
}
|
||||
|
||||
output "actualbudget_container_id" {
|
||||
description = "The ID of the ActualBudget container"
|
||||
value = module.actualbudget.container_id
|
||||
}
|
||||
|
||||
output "actualbudget_local_url" {
|
||||
description = "The local URL to access ActualBudget"
|
||||
value = module.actualbudget.local_url
|
||||
}
|
||||
|
||||
// EmulatorJS
|
||||
output "emulatorjs_container_name" {
|
||||
description = "The name of the EmulatorJS container"
|
||||
value = module.emulatorjs.container_name
|
||||
}
|
||||
|
||||
output "emulatorjs_container_id" {
|
||||
description = "The ID of the EmulatorJS container"
|
||||
value = module.emulatorjs.container_id
|
||||
}
|
||||
|
||||
output "emulatorjs_frontend_url" {
|
||||
description = "The frontend URL for EmulatorJS"
|
||||
value = module.emulatorjs.frontend_url
|
||||
}
|
||||
|
||||
output "emulatorjs_config_url" {
|
||||
description = "The configuration URL for EmulatorJS"
|
||||
value = module.emulatorjs.config_url
|
||||
}
|
||||
50
environments/services/variables.tf
Normal file
50
environments/services/variables.tf
Normal file
@@ -0,0 +1,50 @@
|
||||
// Variables for the services environment
|
||||
|
||||
// Generic
|
||||
variable "timezone" {
|
||||
description = "Timezone for the system"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "puid" {
|
||||
description = "User ID for the container"
|
||||
type = number
|
||||
}
|
||||
|
||||
variable "pgid" {
|
||||
description = "Group ID for the container"
|
||||
type = number
|
||||
}
|
||||
|
||||
variable "data_dir" {
|
||||
description = "Base directory for data volumes"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "default_networks" {
|
||||
description = "List of networks to which the container should be attached"
|
||||
type = list(string)
|
||||
default = []
|
||||
}
|
||||
|
||||
// ActualBudget
|
||||
variable "actualbudget_port" {
|
||||
description = "External port for the ActualBudget server"
|
||||
type = number
|
||||
}
|
||||
|
||||
// EmulatorJS
|
||||
variable "emulatorjs_frontend_port" {
|
||||
description = "External port for the EmulatorJS frontend"
|
||||
type = number
|
||||
}
|
||||
|
||||
variable "emulatorjs_config_port" {
|
||||
description = "External port for the EmulatorJS configuration interface"
|
||||
type = number
|
||||
}
|
||||
|
||||
variable "emulatorjs_backend_port" {
|
||||
description = "External port for the EmulatorJS backend"
|
||||
type = number
|
||||
}
|
||||
Reference in New Issue
Block a user