diff --git a/charts/digitalhub/Chart.yaml b/charts/digitalhub/Chart.yaml index d797649..9021c7d 100644 --- a/charts/digitalhub/Chart.yaml +++ b/charts/digitalhub/Chart.yaml @@ -7,7 +7,7 @@ maintainers: url: https://github.com/ffais - name: calcagiara url: https://github.com/Calcagiara -version: "0.7.0-beta5" +version: "0.7.0-beta6" appVersion: "0.7.0" dependencies: - name: apigw-operator @@ -19,7 +19,7 @@ dependencies: repository: https://helm.coder.com/v2 condition: coder.enabled - name: core - version: "0.2.2" + version: "0.2.3" repository: https://scc-digitalhub.github.io/digitalhub/ condition: core.enabled - name: kubernetes-resource-manager diff --git a/charts/digitalhub/confs/coder/grafana-main.tf b/charts/digitalhub/confs/coder/grafana-main.tf index 1adb08c..c66ecf4 100644 --- a/charts/digitalhub/confs/coder/grafana-main.tf +++ b/charts/digitalhub/confs/coder/grafana-main.tf @@ -122,6 +122,37 @@ resource "coder_metadata" "grafana" { } } +resource "kubernetes_persistent_volume_claim" "database" { + metadata { + name = "grafana-${lower(data.coder_workspace_owner.me.name)}-${lower(data.coder_workspace.me.name)}-database" + namespace = var.namespace + labels = { + "app.kubernetes.io/name" = "grafana-pvc" + "app.kubernetes.io/instance" = "grafana-pvc-${lower(data.coder_workspace_owner.me.name)}-${lower(data.coder_workspace.me.name)}" + "app.kubernetes.io/part-of" = "coder" + "app.kubernetes.io/type" = "pvc" + // Coder specific labels. + "com.coder.resource" = "true" + "com.coder.workspace.id" = data.coder_workspace.me.id + "com.coder.workspace.name" = data.coder_workspace.me.name + "com.coder.user.id" = data.coder_workspace_owner.me.id + "com.coder.user.username" = data.coder_workspace_owner.me.name + } + annotations = { + "com.coder.user.email" = data.coder_workspace_owner.me.email + } + } + wait_until_bound = false + spec { + access_modes = ["ReadWriteOnce"] + resources { + requests = { + storage = "1Gi" + } + } + } +} + resource "kubernetes_service" "grafana-service" { metadata { name = "grafana-${lower(data.coder_workspace_owner.me.name)}-${lower(data.coder_workspace.me.name)}" @@ -244,13 +275,17 @@ resource "kubernetes_deployment" "grafana" { } volume_mount { mount_path = "/var/lib/grafana" - name = "grafana-storage" + name = "database" + sub_path = "grafana" read_only = false } } volume { - name = "grafana-storage" - empty_dir {} + name = "database" + persistent_volume_claim { + claim_name = kubernetes_persistent_volume_claim.database.metadata.0.name + read_only = false + } } affinity { pod_anti_affinity { diff --git a/charts/digitalhub/confs/coder/sqlpad-main.tf b/charts/digitalhub/confs/coder/sqlpad-main.tf index a0e57a9..07bc86f 100644 --- a/charts/digitalhub/confs/coder/sqlpad-main.tf +++ b/charts/digitalhub/confs/coder/sqlpad-main.tf @@ -139,6 +139,37 @@ resource "coder_app" "sqlpad" { } } +resource "kubernetes_persistent_volume_claim" "database" { + metadata { + name = "sqlpad-${lower(data.coder_workspace_owner.me.name)}-${lower(data.coder_workspace.me.name)}-database" + namespace = var.namespace + labels = { + "app.kubernetes.io/name" = "sqlpad-pvc" + "app.kubernetes.io/instance" = "sqlpad-pvc-${lower(data.coder_workspace_owner.me.name)}-${lower(data.coder_workspace.me.name)}" + "app.kubernetes.io/part-of" = "coder" + "app.kubernetes.io/type" = "pvc" + // Coder specific labels. + "com.coder.resource" = "true" + "com.coder.workspace.id" = data.coder_workspace.me.id + "com.coder.workspace.name" = data.coder_workspace.me.name + "com.coder.user.id" = data.coder_workspace_owner.me.id + "com.coder.user.username" = data.coder_workspace_owner.me.name + } + annotations = { + "com.coder.user.email" = data.coder_workspace_owner.me.email + } + } + wait_until_bound = false + spec { + access_modes = ["ReadWriteOnce"] + resources { + requests = { + storage = "1Gi" + } + } + } +} + resource "kubernetes_service" "sqlpad-service" { metadata { name = "sqlpad-${lower(data.coder_workspace_owner.me.name)}-${lower(data.coder_workspace.me.name)}" @@ -300,13 +331,17 @@ resource "kubernetes_deployment" "sqlpad" { } volume_mount { mount_path = "/var/lib/sqlpad" - name = "home" + name = "database" + sub_path = "sqlpad" read_only = false } } volume { - name = "home" - empty_dir {} + name = "database" + persistent_volume_claim { + claim_name = kubernetes_persistent_volume_claim.database.metadata.0.name + read_only = false + } } affinity { pod_anti_affinity {