From 06124852450e9d19fffd39f810a55ea1c5ca8878 Mon Sep 17 00:00:00 2001 From: Jeroen Vijgen Date: Thu, 18 Dec 2025 00:15:34 +0000 Subject: [PATCH] Add temp volume for penpot --- .../10-generic/docker-service/variables.tf | 2 +- modules/10-generic/docker-volumes/main.tf | 19 +++++++++++++++++++ modules/10-generic/docker-volumes/outputs.tf | 4 ++++ .../10-generic/docker-volumes/variables.tf | 4 ++++ .../penpot-service/main.tf | 8 +++++++- 5 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 modules/10-generic/docker-volumes/main.tf create mode 100644 modules/10-generic/docker-volumes/outputs.tf create mode 100644 modules/10-generic/docker-volumes/variables.tf diff --git a/modules/10-generic/docker-service/variables.tf b/modules/10-generic/docker-service/variables.tf index 7ef041d..ca3e7db 100644 --- a/modules/10-generic/docker-service/variables.tf +++ b/modules/10-generic/docker-service/variables.tf @@ -49,7 +49,7 @@ variable "networks" { } variable "volumes" { - description = "List of volume mappings" + description = "List of volume mappings that are hosted on disk" type = list(object({ host_path = string container_path = string diff --git a/modules/10-generic/docker-volumes/main.tf b/modules/10-generic/docker-volumes/main.tf new file mode 100644 index 0000000..8a892ab --- /dev/null +++ b/modules/10-generic/docker-volumes/main.tf @@ -0,0 +1,19 @@ +module "system_globals" { + source = "../../00-globals/system" +} + +terraform { + required_providers { + docker = { + source = "kreuzwerker/docker" + } + } +} + +locals { + name = var.temporary_volume +} + +resource "docker_volume" "shared_volume" { + name = local.name +} \ No newline at end of file diff --git a/modules/10-generic/docker-volumes/outputs.tf b/modules/10-generic/docker-volumes/outputs.tf new file mode 100644 index 0000000..ade926d --- /dev/null +++ b/modules/10-generic/docker-volumes/outputs.tf @@ -0,0 +1,4 @@ +output "name" { + description = "Name of the temporary volume" + value = docker_volume.shared_volume.name +} \ No newline at end of file diff --git a/modules/10-generic/docker-volumes/variables.tf b/modules/10-generic/docker-volumes/variables.tf new file mode 100644 index 0000000..99b5cb6 --- /dev/null +++ b/modules/10-generic/docker-volumes/variables.tf @@ -0,0 +1,4 @@ +variable "temporary_volume" { + description = "Name of temporary volume" + type = string +} \ No newline at end of file diff --git a/modules/30-services-software/penpot-service/main.tf b/modules/30-services-software/penpot-service/main.tf index a73d08b..4736233 100644 --- a/modules/30-services-software/penpot-service/main.tf +++ b/modules/30-services-software/penpot-service/main.tf @@ -6,6 +6,11 @@ terraform { } } +module "penpot_temp_volume" { + source = "../../10-generic/docker-volumes" + temporary_volume = "penpot_temp" +} + locals { container_name = "penpot" penpot_backend_name = "penpot-backend" @@ -27,7 +32,7 @@ locals { penpot_volumes = [ { - host_path = "${var.volume_path}/${local.container_name}/assets" + host_path = "${module.penpot_temp_volume.name}" container_path = "/opt/data/assets" read_only = false } @@ -42,6 +47,7 @@ locals { ] penpot_exporter_env_vars = { + PENPOT_SECRET_KEY = provider::dotenv::get_by_key("PENPOT_SECRET_KEY", local.env_file) PENPOT_PUBLIC_URI = "http://${local.container_name}:${local.internal_port}" PENPOT_REDIS_URI = "redis://${local.valkey_container_name}/0" }