Files
a13labs.infra/terraform/apps/dev-01/apps.tf
T
alexandre.pires 8724360fb2 Enhance infrastructure and application configurations
- Updated AGENTS.md to include new directories for execution plans and implemented feature reports.
- Modified Ansible host variables for dev-02 and gpu-01 to change API endpoints and add new configurations for Scaleway.
- Adjusted firewall rules in gpu-01 to allow HTTPS traffic instead of the previous Ollama port.
- Added OAuth2 proxy configurations to gpu-01 for enhanced security.
- Removed deprecated open-webui module from Terraform app configurations.
- Updated Terraform configurations to reflect changes in local variables and removed unused secrets.
- Created a new sectool.json file for CloudNS integration with Bitwarden.
- Enhanced SELinux configurations for nginx to allow connections to any port and added oauth2-proxy port.
2026-07-12 16:28:45 -04:00

130 lines
3.6 KiB
Terraform

module "samba" {
source = "../../modules/apps/samba"
shares = local.samba_shares
}
module "dns" {
source = "../../modules/apps/coredns"
forward_dns_servers = local.dns_nameservers
override_hosts = local.override_hosts
zones = local.zones
}
module "proxy" {
source = "../../modules/utils/proxy"
services = local.proxy_services
streams = local.streams
}
module "nextcloud" {
source = "../../modules/apps/nextcloud"
fqdn = local.nextcloud_fqdn
nextcloud_data = local.nextcloud_data
app_config = local.nextcloud_config
db_credentials_are_secrets = true
tls_enabled = true
issuer = local.internal_issuer
}
module "llama_windows_proxy" {
source = "../../modules/utils/wol_proxy"
upstream = local.llm_proxy_1
proxy_port = 11435
namespace = "llamacpp"
}
# module "comfyui_proxy" {
# source = "../../modules/utils/wol_proxy"
# upstream = local.comfyui_proxy
# proxy_port = local.comfyui_proxy.port
# namespace = "comfyui"
# }
module "prometheus" {
source = "../../modules/utils/prometheus"
cluster_name = "dev-01"
persistent_folder = "${local.persistent_folder}/monitoring"
config = local.prometheus_config
rules = local.prometheus_rules
alertmanager_config = local.alertmanager_config
email_config = local.alertmanager_email_config
telegram_config = {
bot_token = var.telegram_bot_token
chat_id = local.telegram_chat_id
message = local.telegram_message
}
}
module "grafana" {
source = "../../modules/apps/grafana"
persistent_folder = "${local.persistent_folder}/monitoring"
fqdn = local.grafana_fqdn
dashboard_folder = {
System = "${path.module}/resources/grafana/system"
Kubernetes = "${path.module}/resources/grafana/kubernetes"
Security = "${path.module}/resources/grafana/security"
GPU = "${path.module}/resources/grafana/gpu"
LLM = "${path.module}/resources/grafana/llm"
Windows = "${path.module}/resources/grafana/windows"
}
datasource_folder = "${path.module}/resources/grafana"
}
module "mstream" {
source = "../../modules/apps/mstream"
persistent_folder = local.persistent_folder
music_folder = local.mstream_music_folder
fqdn = local.mstream_fqdn
}
module "searxng" {
source = "../../modules/apps/searxng"
persistent_folder = local.searxng_folder
fqdn = local.searxng_fqdn
issuer = local.searxng_issuer
tag = "2026.5.2-aefc3c316"
secret_key = var.searxng_secret_key
}
module "vaultwarden" {
source = "../../modules/apps/vaultwarden"
persistent_folder = local.vaultwarden_folder
fqdn = local.vaultwarden_fqdn
issuer = local.vaultwarden_issuer
tag = local.vaultwarden_version
admin_token = var.vaultwarden_admin_token
smtp_host = local.vaultwarden_smtp_host
smtp_port = local.vaultwarden_smtp_port
smtp_security = local.vaultwarden_smtp_security
smtp_from = local.vaultwarden_smtp_from
smtp_from_name = local.vaultwarden_smtp_from_name
smtp_username = local.vaultwarden_smtp_username
smtp_password = local.vaultwarden_smtp_password
# We temporarily enable signup to create the first admin user, then we will disable it and rotate the admin token
# signup_enabled = true
# signup_verify = false
}
module "terraform-mcp" {
source = "../../modules/apps/terraform-mcp"
fqdn = local.terraform_mcp_fqdn
tag = "1.0.0"
persistent_folder = local.persistent_folder
}