- Rename Go module switchboard-core → armature (155+ files) - Rename Docker image → gobha/armature - Rename K8s resources, secrets, deployments - Rename Prometheus metrics switchboard_* → armature_* - Rename env vars SWITCHBOARD_ADMIN_* → ARMATURE_ADMIN_* - Rename DB names switchboard_core* → armature* - Update all frontend branding, notification templates, docs - Update CI scripts, e2e tests, Keycloak realm, nginx conf - Rename scripts/switchboard-ca.sh → scripts/armature-ca.sh - Rename k8s/switchboard.yaml → k8s/armature.yaml - Rename chart alerting/dashboard files - Fix: DockerHub push uses env: binding for secret injection - Helm chart updated (name, labels, template functions, dashboard, alerting) - Replace favicon/icon assets with Armature brand No functional changes. Pure mechanical rename + CI fix. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
57 lines
1.9 KiB
YAML
57 lines
1.9 KiB
YAML
{{- if .Values.ingress.enabled }}
|
|
apiVersion: networking.k8s.io/v1
|
|
kind: Ingress
|
|
metadata:
|
|
name: {{ .Release.Name }}-ingress
|
|
labels:
|
|
{{- include "armature.labels" . | nindent 4 }}
|
|
{{- if or .Values.ingress.annotations (and (eq (default "traefik" .Values.ingress.className) "traefik") .Values.ingress.retry.annotateIngress) }}
|
|
annotations:
|
|
{{- with .Values.ingress.annotations }}
|
|
{{- toYaml . | nindent 4 }}
|
|
{{- end }}
|
|
{{- if and (eq (default "traefik" .Values.ingress.className) "traefik") .Values.ingress.retry.annotateIngress }}
|
|
traefik.ingress.kubernetes.io/router.middlewares: {{ .Release.Namespace }}-{{ .Release.Name }}-retry@kubernetescrd
|
|
{{- end }}
|
|
{{- end }}
|
|
spec:
|
|
{{- if .Values.ingress.className }}
|
|
ingressClassName: {{ .Values.ingress.className }}
|
|
{{- end }}
|
|
{{- if .Values.ingress.tls.enabled }}
|
|
tls:
|
|
- hosts:
|
|
- {{ .Values.ingress.host }}
|
|
{{- if .Values.ingress.tls.secretName }}
|
|
secretName: {{ .Values.ingress.tls.secretName }}
|
|
{{- end }}
|
|
{{- end }}
|
|
rules:
|
|
- host: {{ .Values.ingress.host }}
|
|
http:
|
|
paths:
|
|
# API + WebSocket → backend
|
|
- path: {{ .Values.basePath }}/api
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: {{ .Release.Name }}-backend
|
|
port:
|
|
number: {{ .Values.backend.port }}
|
|
- path: {{ .Values.basePath }}/ws
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: {{ .Release.Name }}-backend
|
|
port:
|
|
number: {{ .Values.backend.port }}
|
|
# Everything else → frontend (nginx serves static + proxies API)
|
|
- path: {{ .Values.basePath | default "/" }}
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: {{ .Release.Name }}-frontend
|
|
port:
|
|
number: {{ .Values.frontend.port }}
|
|
{{- end }}
|