Compare commits

3 Commits

Author SHA1 Message Date
37f4d44caf Merge remote-tracking branch 'origin/main' 2025-10-06 17:40:51 +02:00
d0ffab97c3 feat(infrastructure): add metrics server 2025-10-06 17:40:40 +02:00
ribardej
b6f8daba8c rabbitmq legacy support 2025-10-06 16:30:50 +02:00
5 changed files with 49 additions and 12 deletions

View File

@@ -51,8 +51,8 @@ jobs:
- name: Helm upgrade/install PR preview
env:
DEV_BASE_DOMAIN: ${{ secrets.BASE_DOMAIN }}
RABBITMQ_PASSWORD: ${{ secrets.PROD_RABBITMQ_PASSWORD }}
DB_PASSWORD: ${{ secrets.PROD_DB_PASSWORD }}
RABBITMQ_PASSWORD: ${{ secrets.RABBITMQ_PASSWORD }}
DB_PASSWORD: ${{ secrets.DB_PASSWORD }}
IMAGE_REPO: ${{ needs.build.outputs.image_repo }}
DIGEST: ${{ needs.build.outputs.digest }}
run: |
@@ -103,7 +103,7 @@ jobs:
uninstall:
if: github.event.action == 'closed'
name: Helm uninstall (PR preview)
runs-on: vhs
runs-on: ubuntu-latest
steps:
- name: Setup Helm
uses: azure/setup-helm@v4

View File

@@ -48,7 +48,7 @@ app.include_router(
# Liveness/root endpoint
@app.get("/", include_in_schema=False)
async def root():
return {"status": "ok", "message": "Welcome to the FastAPI application!"}
return {"status": "ok"}
@app.get("/authenticated-route")

View File

@@ -15,7 +15,7 @@ services:
volumes:
- redis_data:/data
rabbitmq:
image: bitnami/rabbitmq:3.13.3-debian-12-r0
image: bitnamilegacy/rabbitmq:3.13.3-debian-12-r0
network_mode: host
ports:
- "5672:5672"

View File

@@ -42,23 +42,27 @@ provider "helm" {
}
module "storage" {
source = "${path.module}/modules/storage"
source = "./modules/storage"
}
module "metrics_server" {
source = "./modules/metrics-server"#
}
module "loadbalancer" {
source = "${path.module}/modules/metallb"
source = "./modules/metallb"
depends_on = [module.storage]
metallb_ip_range = var.metallb_ip_range
}
module "cert-manager" {
source = "${path.module}/modules/cert-manager"
source = "./modules/cert-manager"
depends_on = [module.loadbalancer]
}
module "cloudflare" {
source = "${path.module}/modules/cloudflare"
source = "./modules/cloudflare"
depends_on = [module.cert-manager]
cloudflare_api_token = var.cloudflare_api_token
@@ -69,14 +73,14 @@ module "cloudflare" {
}
module "monitoring" {
source = "${path.module}/modules/prometheus"
source = "./modules/prometheus"
depends_on = [module.cloudflare]
cloudflare_domain = var.cloudflare_domain
}
module "database" {
source = "${path.module}/modules/maxscale"
source = "./modules/maxscale"
depends_on = [module.monitoring]
mariadb_password = var.mariadb_password
@@ -109,7 +113,7 @@ module "database" {
#}
module "rabbitmq" {
source = "${path.module}/modules/rabbitmq"
source = "./modules/rabbitmq"
depends_on = [module.database]
base_domain = var.cloudflare_domain
rabbitmq-password = var.rabbitmq-password

View File

@@ -0,0 +1,33 @@
terraform {
required_providers {
kubectl = {
source = "gavinbunney/kubectl"
version = "1.19.0"
}
helm = {
source = "hashicorp/helm"
version = "3.0.2"
}
kubernetes = {
source = "hashicorp/kubernetes"
version = "2.38.0"
}
}
}
# Deploy metrics-server via Helm into kube-system namespace
resource "helm_release" "metrics_server" {
name = "metrics-server"
repository = "https://kubernetes-sigs.github.io/metrics-server/"
chart = "metrics-server"
namespace = "kube-system"
wait = true
timeout = 600
recreate_pods = false
force_update = false
values = [
file("${path.module}/values.yaml")
]
}