diff --git a/charts/spire/charts/spire-server/README.md b/charts/spire/charts/spire-server/README.md index da8643d..7272fdf 100644 --- a/charts/spire/charts/spire-server/README.md +++ b/charts/spire/charts/spire-server/README.md @@ -267,6 +267,12 @@ In order to run Tornjak with simple HTTP Connection only, make sure you don't cr | `tornjak.service.ports.http` | Insecure port for tornjak service | `10000` | | `tornjak.service.ports.https` | Secure port for tornjak service | `10443` | | `tornjak.service.annotations` | Annotations for the service | `{}` | +| `tornjak.ingress.enabled` | Flag to enable ingress for Tornjak backend service | `false` | +| `tornjak.ingress.className` | Ingress class name for Tornjak backend service | `""` | +| `tornjak.ingress.annotations` | Annotations for Tornjak backend service | `{}` | +| `tornjak.ingress.tlsBackendPort` | Flag to enable TLS on the ingress Tornjak backend service | `false` | +| `tornjak.ingress.hosts` | Host paths for ingress Tornjak backend service | `[]` | +| `tornjak.ingress.tls` | Secrets containing TLS certs to enable https on ingress | `[]` | | `tornjak.startupProbe.failureThreshold` | Failure threshold count | `3` | | `tornjak.startupProbe.initialDelaySeconds` | Initial delay seconds | `5` | | `tornjak.startupProbe.periodSeconds` | Period seconds | `10` | diff --git a/charts/spire/charts/spire-server/templates/tornjak-ingress.yaml b/charts/spire/charts/spire-server/templates/tornjak-ingress.yaml new file mode 100644 index 0000000..9a40e9b --- /dev/null +++ b/charts/spire/charts/spire-server/templates/tornjak-ingress.yaml @@ -0,0 +1,16 @@ +{{- if .Values.tornjak.ingress.enabled -}} +{{- $fullName := include "spire-tornjak.fullname" . -}} +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ $fullName }} + namespace: {{ include "spire-server.namespace" . }} + labels: + {{ include "spire-server.labels" . | nindent 4}} + {{- with .Values.tornjak.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + {{ include "spire-lib.ingress-spec" (dict "ingress" .Values.tornjak.ingress "svcName" (include "spire-tornjak.servicename" .) "port" "tornjak-srv-http") | nindent 2 }} +{{- end }} diff --git a/charts/spire/charts/spire-server/values.yaml b/charts/spire/charts/spire-server/values.yaml index 64bf689..d374a9b 100644 --- a/charts/spire/charts/spire-server/values.yaml +++ b/charts/spire/charts/spire-server/values.yaml @@ -562,6 +562,27 @@ tornjak: ## @param tornjak.service.annotations [object] Annotations for the service annotations: {} + ## @param tornjak.ingress.enabled Flag to enable ingress for Tornjak backend service + ## @param tornjak.ingress.className Ingress class name for Tornjak backend service + ## @param tornjak.ingress.annotations [object] Annotations for Tornjak backend service + ## @param tornjak.ingress.tlsBackendPort Flag to enable TLS on the ingress Tornjak backend service + ## @param tornjak.ingress.hosts [array] Host paths for ingress Tornjak backend service + ingress: + enabled: false + className: "" + annotations: {} + tlsBackendPort: false + hosts: + - host: tornjak-backend.example.org + paths: + - path: / + pathType: Prefix + ## @param tornjak.ingress.tls [array] Secrets containing TLS certs to enable https on ingress + tls: [] + # - secretName: chart-example-tls + # hosts: + # - tornjak-backend.example.org + ## @param tornjak.startupProbe.failureThreshold Failure threshold count ## @param tornjak.startupProbe.initialDelaySeconds Initial delay seconds ## @param tornjak.startupProbe.periodSeconds Period seconds diff --git a/charts/spire/charts/tornjak-frontend/README.md b/charts/spire/charts/tornjak-frontend/README.md index ec42818..719beed 100644 --- a/charts/spire/charts/tornjak-frontend/README.md +++ b/charts/spire/charts/tornjak-frontend/README.md @@ -88,6 +88,11 @@ port forwarding. See the chart NOTES output for more details. | `startupProbe.timeoutSeconds` | Timeout seconds for startupProbe | `5` | | `startupProbe.failureThreshold` | Failure threshold count for startupProbe | `6` | | `startupProbe.successThreshold` | Success threshold count for startupProbe | `1` | +| `ingress.enabled` | Flag to enable ingress for Tornjak frontend service | `false` | +| `ingress.className` | Ingress class name for Tornjak frontend service | `""` | +| `ingress.annotations` | Annotations for Tornjak frontend service | `{}` | +| `ingress.hosts` | Host paths for ingress Tornjak frontend service | `[]` | +| `ingress.tls` | Secrets containing TLS certs to enable https on ingress | `[]` | | `tests.bash.image.registry` | The OCI registry to pull the image from | `cgr.dev` | | `tests.bash.image.repository` | The repository within the registry | `chainguard/bash` | | `tests.bash.image.pullPolicy` | The image pull policy | `IfNotPresent` | diff --git a/charts/spire/charts/tornjak-frontend/templates/ingress.yaml b/charts/spire/charts/tornjak-frontend/templates/ingress.yaml new file mode 100644 index 0000000..1d14de2 --- /dev/null +++ b/charts/spire/charts/tornjak-frontend/templates/ingress.yaml @@ -0,0 +1,16 @@ +{{- if .Values.ingress.enabled -}} +{{- $fullName := include "tornjak-frontend.fullname" . -}} +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: {{ $fullName }} + namespace: {{ include "tornjak-frontend.namespace" . }} + labels: + {{ include "tornjak-frontend.labels" . | nindent 4}} + {{- with .Values.ingress.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + {{ include "spire-lib.ingress-spec" (dict "ingress" .Values.ingress "svcName" $fullName "port" .Values.service.port "global" .Values.global) | nindent 2 }} +{{- end }} diff --git a/charts/spire/charts/tornjak-frontend/values.yaml b/charts/spire/charts/tornjak-frontend/values.yaml index bfb75a1..1e7abbf 100644 --- a/charts/spire/charts/tornjak-frontend/values.yaml +++ b/charts/spire/charts/tornjak-frontend/values.yaml @@ -22,13 +22,13 @@ image: ## @param imagePullSecrets [array] Pull secrets for images imagePullSecrets: [] -## @param nameOverride Name override +## @param nameOverride Name override nameOverride: "" -## @param namespaceOverride Namespace override +## @param namespaceOverride Namespace override namespaceOverride: "" -## @param fullnameOverride Fullname override +## @param fullnameOverride Fullname override fullnameOverride: "" ## @param serviceAccount.create Specifies whether a service account should be created @@ -113,6 +113,25 @@ startupProbe: failureThreshold: 6 successThreshold: 1 +## @param ingress.enabled Flag to enable ingress for Tornjak frontend service +## @param ingress.className Ingress class name for Tornjak frontend service +## @param ingress.annotations [object] Annotations for Tornjak frontend service +## @param ingress.hosts [array] Host paths for ingress Tornjak frontend service +ingress: + enabled: false + className: "" + annotations: {} + hosts: + - host: tornjak-frontend.example.org + paths: + - path: / + pathType: Prefix + ## @param ingress.tls [array] Secrets containing TLS certs to enable https on ingress + tls: [] + # - secretName: chart-example-tls + # hosts: + # - tornjak-frontend.example.org + tests: bash: ## @param tests.bash.image.registry The OCI registry to pull the image from