diff --git a/variables.auto.tfvars b/variables.auto.tfvars index 781800b..67c6d73 100644 --- a/variables.auto.tfvars +++ b/variables.auto.tfvars @@ -161,7 +161,7 @@ kubernetes = { image = "qmcgaw/gluetun:latest" service_port = [8888] #extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/gluetun/gluetun-secret-netherlandNL-FREE-280.yaml"] - secret_import = ["5527ba11-07e3-415b-8d1f-b3ee0154eb56","b0d22160-d81a-4702-a3dd-b40e0168d617"] + secret_import = ["5527ba11-07e3-415b-8d1f-b3ee0154eb56", "b0d22160-d81a-4702-a3dd-b40e0168d617","643dbe99-ace0-4ef5-8a2e-b44f014dccb0"] security_context = true # requirements = { # limits-cpu = "800Mi" @@ -231,7 +231,7 @@ kubernetes = { # value = "user" #} DNS_KEEP_NAMESERVER = { - value = "off" + value = "on" } VPN_SERVICE_PROVIDER = { value = "custom" @@ -250,8 +250,10 @@ kubernetes = { } HEALTH_TARGET_ADDRESS = { - value = "protonvpn.com" + value = "protonvpn.com:80" } + FIREWALL_OUTBOUND_SUBNETS = { + value = "10.0.0.0/24" } } @@ -1546,6 +1548,12 @@ kubernetes = { extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/django/kubeconfig.secret.yaml", "/opt/kubernetes/Terraform_kube/external_manifests/django/django-db.secret.yaml"] environment = { + ALLOWED_HOSTS = { + value = "django.tryton.geeraert.eu,redirect.tryton.geeraert.eu" + } + DEBUG = { + value = "False" + } #HTTP_PROXY = { #value = "http://gluetun-svc.gluetun.svc:8888" } @@ -1643,6 +1651,41 @@ kubernetes = { value = "/code/django_code/" } } + django-testing = { + #enabled =false + image = "gitea.tryton.geeraert.eu/pi-ux-ce/django-testing:latest" + service_port = [8000] + database = {} + requirements = { + limits-cpu = "800m" + limits-memory = "800Mi" + requests-cpu = "10m" + requests-memory = "300Mi" + } + extra_manifest = ["/opt/kubernetes/Terraform_kube/external_manifests/django/kubeconfig-testing.secret.yaml"] + environment = { + ALLOWED_HOSTS = { + value = "django-testing.tryton.geeraert.eu,redirect.tryton.geeraert.eu" + } + DEBUG = { + value = "true" + } + DB_PORT = { + value = 5432 + } + CUSTOM_DB_DATABASE = { + value = "cloudmanager" } + } + pvc = { + kubeconfig-secret = { + secret = true + name = "kubeconfig" + mount_path = "/kubeconfig" + } + } + + } + keycloak = { enabled = false name = "keycloak" @@ -2440,21 +2483,71 @@ kubernetes = { } } } - sharelatex = { - enabled = false - image = "sharelatex/sharelatex" - replicas = 1 - service_port = [8268] + overleaf = { + #enabled = false + #image = "sharelatex/sharelatex:6.1.2" + image = "tuetenk0pp/sharelatex-full:latest" + replicas = 1 + environment = { + MONGO_URL = { + value = "mongodb://overleaf-db-svc:27017/overleaf" + } + REDIS_URL = { + value = "redis://overleaf-redis-svc:6379" + } + OVERLEAF_MONGO_URL = { + value = "mongodb://overleaf-db-svc:27017/overleaf" + } + OVERLEAF_REDIS_HOST = { + value = "overleaf-redis-svc" + } + REDIS_HOST = { + value = "overleaf-redis-svc" + } + REDIS_PORT = { + value = "6379" + } + + TZ = { + value = "Etc/UTC" + } + + VERBOSITY = { + value = "-vv" } + } + service_port = [80] database = { - "image" = "mongo:4.0" + "image" = "mongo:8.0" "port" = 27017 "mountPath" = "/data/db" - "command" = "--replSet overleaf" + #initialise the replicaset of the mongo DB + #kubectl exec -it -- mongosh + #cfg = rs.conf() + #cfg.members[0].host = "mongodb:27017" // ← your K8s Service name + port + #rs.reconfig(cfg, { force: true }) + #rs.status() + #// members[0].name should now show "mongodb:27017" } + database_args = ["--replSet", "overleaf"] redis = { - image = "redis:5.0" } + image = "redis:7.4" } + pvc = { + overleaf-data = { + pvc = true + pvc_size = "2Mi" + mount_path = "/var/lib/overleaf" + name = "overleaf-data" + } + overleaf-package = { + pvc = true + pvc_size = "2Mi" + mount_path = "/usr/local/texlive/" + name = "overleaf-package" + } + } } + fail2ban = { # enabled = false #image = "lscr.io/linuxserver/fail2ban:latest" @@ -2533,5 +2626,36 @@ kubernetes = { } } } + reactive = { + #disabled because it needs AI to import a pdf and AI integration is not working + enabled = false + replicas = 01 + domain_name = "reactive" + image = "ghcr.io/amruthpillai/reactive-resume:latest" + service_port = [3000] + environment = { + AUTH_SECRET = { + value = "change-me-to-a-secure-secret-key-in-production" + } + PRINTER_ENDPOINT = { + value = "ws://browserless:3000?token=change-me" + } + APP_URL = { + value = "https://reactive.tryton.geeraert.eu" + } + AI_ALLOWED_BASE_URLS = { + value = "api.openai.com,https://gateway.ai.vercel.com" + } + } + database = {} + pvc = { + reactive-resume-data = { + name = "reactive-resume-data" + pvc = true + pvc_size = "2Gi" + mount_path = "/app/data" + } + } + } }