suite: Test ingress.yaml templates: - templates/gitea/ingress.yaml tests: - it: should enable ingress when ingress.enabled is true set: ingress.enabled: true ingress.apiVersion: networking.k8s.io/v1 ingress.annotations: kubernetes.io/ingress.class: nginx ingress.className: nginx ingress.tls: - hosts: - example.com secretName: tls-secret ingress.hosts: - host: example.com paths: ["/"] asserts: - hasDocuments: count: 1 - isKind: of: Ingress - equal: path: metadata.name value: RELEASE-NAME-gitea - matchRegex: path: apiVersion pattern: networking.k8s.io/v1 - equal: path: spec.ingressClassName value: nginx - equal: path: spec.rules[0].host value: "example.com" - equal: path: spec.tls[0].hosts[0] value: "example.com" - equal: path: spec.tls[0].secretName value: tls-secret - equal: path: metadata.annotations["kubernetes.io/ingress.class"] value: nginx - it: should not create ingress when ingress.enabled is false set: ingress.enabled: false asserts: - hasDocuments: count: 0 - it: Ingress Class using TPL set: global.ingress.className: "ingress-class" ingress.ingressClassName: "{{ .Values.global.ingress.className }}" ingress.enabled: true ingress.hosts[0].host: "some-host" ingress.tls: - secretName: gitea-tls hosts: - "some-host" asserts: - isKind: of: Ingress - equal: path: spec.tls[0].hosts[0] value: "some-host" - equal: path: spec.rules[0].host value: "some-host" - equal: path: spec.ingressClassName value: "ingress-class" - it: hostname using TPL set: global.giteaHostName: "gitea.example.com" ingress.enabled: true ingress.hosts[0].host: "{{ .Values.global.giteaHostName }}" ingress.tls: - secretName: gitea-tls hosts: - "{{ .Values.global.giteaHostName }}" asserts: - isKind: of: Ingress - equal: path: spec.tls[0].hosts[0] value: "gitea.example.com" - equal: path: spec.rules[0].host value: "gitea.example.com"