Implement app deployment improvements

This commit is contained in:
2026-05-22 22:25:40 +02:00
parent 60a9e37a86
commit 934770cb68
15 changed files with 552 additions and 25 deletions

43
docs/operator-recipes.md Normal file
View File

@@ -0,0 +1,43 @@
# Operator Recipes
## Service-IP Smoke Checks
Avoid one-shot `kubectl run --rm -i` probes for service connectivity.
The container can exit before the connection result is reliable, which
creates false negatives during rollout debugging.
Use a persistent pod, wait for readiness, then exec the probe:
```bash
NAMESPACE=vergabe-teilnahme \
tools/smoke-service.sh http://vergabe-teilnahme.vergabe-teilnahme.svc/health/
```
Reuse the same pod for a debugging session:
```bash
NAMESPACE=vergabe-teilnahme POD_NAME=service-smoke \
tools/smoke-service.sh http://vergabe-teilnahme.vergabe-teilnahme.svc/health/
```
Clean it up when finished:
```bash
kubectl delete pod service-smoke -n vergabe-teilnahme
```
Or set `CLEANUP=true` for a single checked run.
## Manifest Server Dry-Run
Schema drift in live CRDs is caught by server-side dry-run, not by Helm
rendering alone:
```bash
make k8s-server-dry-run
```
The command expects a representative Kubernetes API server with the same
CRDs as the Railiance cluster. CI should run it against a disposable kind
cluster seeded with CNPG, cert-manager, Traefik, and any other CRDs used
by changed manifests.