-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathk8s-ee.yaml
More file actions
39 lines (33 loc) · 1.49 KB
/
k8s-ee.yaml
File metadata and controls
39 lines (33 loc) · 1.49 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# yaml-language-server: $schema=https://raw.githubusercontent.com/koder-cat/k8s-ephemeral-environments/main/.github/actions/validate-config/schema.json
# k8s-ee.yaml - Ephemeral PR environment configuration
# This repository dogfoods its own platform (demo-app uses NestJS with MariaDB)
#
# See docs/guides/k8s-ee-config-reference.md for all available options
# Project identifier - used for namespace naming (k8s-ee-pr-{number})
# and preview URL generation ({projectId}-pr-{number}.k8s-ee.genesluna.dev)
projectId: k8s-ee
# Application configuration
app:
port: 3000 # Container port the app listens on
healthPath: /api/health # Liveness/readiness probe endpoint
metricsPath: /metrics # Prometheus metrics endpoint (optional)
# Image build configuration (paths relative to repo root)
image:
context: ./demo-app # Docker build context directory
dockerfile: Dockerfile # Dockerfile path within context
# Database configuration - enables MariaDB for this environment
# Connection string injected as MYSQL_URL environment variable
# Schema is managed by Drizzle ORM migrations at app startup (not bootstrap SQL)
databases:
mariadb:
enabled: true
mongodb:
enabled: true # Activity audit logging with 7-day TTL
redis:
enabled: true # API response caching and rate limiting
minio:
enabled: true # S3-compatible file storage
# Enable Prometheus metrics scraping via ServiceMonitor
metrics:
enabled: true
interval: 30s # Scrape interval