Skip to content
Snippets Groups Projects
Commit 8cbca03d authored by OZGCloud's avatar OZGCloud
Browse files

remove ingress

parent c4e56478
Branches
Tags
No related merge requests found
#
# Copyright (C) 2022 Das Land Schleswig-Holstein vertreten durch den
# Ministerpräsidenten des Landes Schleswig-Holstein
# Staatskanzlei
# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
#
# Lizenziert unter der EUPL, Version 1.2 oder - sobald
# diese von der Europäischen Kommission genehmigt wurden -
# Folgeversionen der EUPL ("Lizenz");
# Sie dürfen dieses Werk ausschließlich gemäß
# dieser Lizenz nutzen.
# Eine Kopie der Lizenz finden Sie hier:
#
# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
#
# Sofern nicht durch anwendbare Rechtsvorschriften
# gefordert oder in schriftlicher Form vereinbart, wird
# die unter der Lizenz verbreitete Software "so wie sie
# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
# ausdrücklich oder stillschweigend - verbreitet.
# Die sprachspezifischen Genehmigungen und Beschränkungen
# unter der Lizenz sind dem Lizenztext zu entnehmen.
#
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
{{- if (.Values.ingress).certManagerAnnotations -}}
{{- range (.Values.ingress).certManagerAnnotations }}
{{ . | indent 4 }}
{{- end }}
{{- else if (.Values.ingress).use_staging_cert }}
cert-manager.io/cluster-issuer: letsencrypt-staging
{{- else }}
cert-manager.io/cluster-issuer: letsencrypt-prod
{{- end }}
nginx.ingress.kubernetes.io/proxy-body-size: 42m
name: {{ .Release.Name }}
namespace: {{ .Release.Namespace }}
spec:
{{- if and (.Values.ingress).className (ne (.Values).cluster_env "dataport") }}
ingressClassName: {{ .Values.ingress.className }}
{{- end }}
rules:
- http:
paths:
- backend:
service:
port:
number: 8080
name: {{ .Release.Name }}
path: ''
pathType: ImplementationSpecific
host: {{ include "app.baseDomain" . }}
tls:
- hosts:
- {{ include "app.baseDomain" . }}
{{- if (.Values.ingress).tlsSecretName }}
secretName: {{ (.Values.ingress).tlsSecretName }}
{{- else if ne (.Values).cluster_env "dataport" }}
secretName: {{ (.Values.ozgcloud).bezeichner }}-{{ .Release.Name }}-tls
{{- end }}
\ No newline at end of file
#
# Copyright (C) 2024 Das Land Schleswig-Holstein vertreten durch den
# Ministerpräsidenten des Landes Schleswig-Holstein
# Staatskanzlei
# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung
#
# Lizenziert unter der EUPL, Version 1.2 oder - sobald
# diese von der Europäischen Kommission genehmigt wurden -
# Folgeversionen der EUPL ("Lizenz");
# Sie dürfen dieses Werk ausschließlich gemäß
# dieser Lizenz nutzen.
# Eine Kopie der Lizenz finden Sie hier:
#
# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12
#
# Sofern nicht durch anwendbare Rechtsvorschriften
# gefordert oder in schriftlicher Form vereinbart, wird
# die unter der Lizenz verbreitete Software "so wie sie
# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN -
# ausdrücklich oder stillschweigend - verbreitet.
# Die sprachspezifischen Genehmigungen und Beschränkungen
# unter der Lizenz sind dem Lizenztext zu entnehmen.
#
suite: ingress
release:
name: administration
templates:
- templates/ingress.yaml
set:
ozgcloud:
environment: default
bezeichner: helmtest
adminDomainSuffix: domainsuffix
tests:
- it: should have metadata values
asserts:
- isKind:
of: Ingress
- equal:
path: metadata.name
value: "administration"
- equal:
path: metadata.namespace
value: "NAMESPACE"
- it: should use default letsencrypt-prod cluster-issuer
asserts:
- equal:
path: metadata.annotations["cert-manager.io/cluster-issuer"]
value: letsencrypt-prod
- it: should use letsencrypt-staging cluster-issuer
set:
ingress.use_staging_cert: true
asserts:
- equal:
path: metadata.annotations["cert-manager.io/cluster-issuer"]
value: letsencrypt-staging
- it: should use letsencrypt-prod cluster-issuer
set:
ingress.use_staging_cert: false
asserts:
- equal:
path: metadata.annotations["cert-manager.io/cluster-issuer"]
value: letsencrypt-prod
- it: should set proxy body size to 42m
asserts:
- equal:
path: metadata.annotations["nginx.ingress.kubernetes.io/proxy-body-size"]
value: 42m
- it: should set backend with port
asserts:
- contains:
path: spec.rules[0].http.paths
content:
backend:
service:
port:
number: 8080
name: administration
path: ""
pathType: ImplementationSpecific
- it: should set host
asserts:
- equal:
path: spec.rules[0].host
value: helmtest-domainsuffix.ozg-sh.de
- it: should configure tls w/o tlsSecretName
asserts:
- contains:
path: spec.tls
content:
hosts:
- helmtest-domainsuffix.ozg-sh.de
secretName: helmtest-administration-tls
- it: should configure tls w/ tlsSecretName
set:
ingress:
tlsSecretName: secret-name
asserts:
- contains:
path: spec.tls
content:
hosts:
- helmtest-domainsuffix.ozg-sh.de
secretName: secret-name
- it: should configure tls for dataport without secretName
set:
cluster_env: dataport
asserts:
- contains:
path: spec.tls
content:
hosts:
- helmtest-domainsuffix.ozg-sh.de
- it: should use ingressClassName
set:
ingress:
className: ingress-class-name
asserts:
- equal:
path: spec.ingressClassName
value: ingress-class-name
- it: should not use ingressClassName if not defined
asserts:
- notExists:
path: spec.ingressClassName
- it: should not use ingressClassName with dataport env
set:
ingress:
className: ingress-class-name
cluster_env: dataport
asserts:
- notExists:
path: spec.ingressClassName
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment