Stoat deployment

This commit is contained in:
Antonin Ruan
2026-02-12 20:40:39 +01:00
parent c258a1d09e
commit 8d435f9f30
11 changed files with 1901 additions and 0 deletions
+89
View File
@@ -0,0 +1,89 @@
variable "mongo" {
type = object({
app_name = optional(string, "mongo")
image = string
version = string
})
}
resource "kubernetes_service_v1" "mongo" {
metadata {
name = var.mongo.app_name
namespace = kubernetes_namespace_v1.stoat.metadata[0].name
}
spec {
selector = {
app = var.mongo.app_name
}
port {
port = 27017
target_port = 27017
}
}
}
resource "kubernetes_persistent_volume_claim_v1" "mongo" {
metadata {
name = var.mongo.app_name
namespace = kubernetes_namespace_v1.stoat.metadata[0].name
}
spec {
storage_class_name = "local-path"
access_modes = ["ReadWriteOnce"]
resources {
requests = {
storage = "5Gi"
}
}
}
}
resource "kubernetes_deployment_v1" "mongo" {
metadata {
name = var.mongo.app_name
namespace = kubernetes_namespace_v1.stoat.metadata[0].name
}
spec {
replicas = 1
selector {
match_labels = {
app = var.mongo.app_name
}
}
template {
metadata {
labels = {
"app" = var.mongo.app_name
}
}
spec {
container {
name = var.mongo.app_name
image = "${var.mongo.image}:${var.mongo.version}"
port {
container_port = 27017
}
volume_mount {
name = "mongo-data"
mount_path = "/data/db"
}
}
volume {
name = "mongo-data"
persistent_volume_claim {
claim_name = var.mongo.app_name
}
}
}
}
}
}