
Reviewed-on: https://code.forgejo.org/forgejo-helm/forgejo-helm/pulls/954 Reviewed-by: Michael Kriese <michael.kriese@gmx.de> Co-authored-by: Lucien Weller <lucien@wellernet.ch> Co-committed-by: Lucien Weller <lucien@wellernet.ch>
155 lines
4.2 KiB
YAML
155 lines
4.2 KiB
YAML
# $schema: https://raw.githubusercontent.com/helm-unittest/helm-unittest/main/schema/helm-testsuite.json
|
|
suite: route template
|
|
release:
|
|
name: gitea-unittests
|
|
namespace: testing
|
|
templates:
|
|
- templates/gitea/route.yaml
|
|
tests:
|
|
- it: hostname using TPL
|
|
set:
|
|
global.giteaHostName: 'gitea.example.com'
|
|
route.enabled: true
|
|
route.host: '{{ .Values.global.giteaHostName }}'
|
|
asserts:
|
|
- isKind:
|
|
of: Route
|
|
- equal:
|
|
path: spec.host
|
|
value: 'gitea.example.com'
|
|
- notExists:
|
|
path: spec.wildcardPolicy
|
|
- it: wildcard policy
|
|
set:
|
|
global.giteaHostName: 'gitea.example.com'
|
|
route.enabled: true
|
|
route.wildcardPolicy: 'Subdomain'
|
|
asserts:
|
|
- isKind:
|
|
of: Route
|
|
- equal:
|
|
path: spec.wildcardPolicy
|
|
value: 'Subdomain'
|
|
- it: existing certificate
|
|
set:
|
|
route.enabled: true
|
|
route.tls.existingSecret: certificate-secret
|
|
route.tls.certificate: |
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
route.tls.privateKey: |
|
|
-----BEGIN PRIVATE KEY-----
|
|
...
|
|
-----END PRIVATE KEY-----
|
|
route.tls.caCertificate: |
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
asserts:
|
|
- isKind:
|
|
of: Route
|
|
- equal:
|
|
path: spec.tls.externalCertificate
|
|
value: certificate-secret
|
|
- notExists:
|
|
path: spec.tls.certificate
|
|
- notExists:
|
|
path: spec.tls.key
|
|
- notExists:
|
|
path: spec.tls.caCertificate
|
|
- it: valid certificate values
|
|
set:
|
|
route.enabled: true
|
|
route.tls.certificate: |
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
route.tls.privateKey: |
|
|
-----BEGIN PRIVATE KEY-----
|
|
...
|
|
-----END PRIVATE KEY-----
|
|
route.tls.caCertificate: |
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
asserts:
|
|
- isKind:
|
|
of: Route
|
|
- notExists:
|
|
path: spec.tls.externalCertificate
|
|
- equal:
|
|
path: spec.tls.certificate
|
|
value: |
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
- equal:
|
|
path: spec.tls.key
|
|
value: |
|
|
-----BEGIN PRIVATE KEY-----
|
|
...
|
|
-----END PRIVATE KEY-----
|
|
- equal:
|
|
path: spec.tls.caCertificate
|
|
value: |
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
- it: missing certificate values
|
|
set:
|
|
route.enabled: true
|
|
route.tls.privateKey: |
|
|
-----BEGIN PRIVATE KEY-----
|
|
...
|
|
-----END PRIVATE KEY-----
|
|
route.tls.caCertificate: |
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
asserts:
|
|
- failedTemplate:
|
|
errorMessage: certificate, privateKey and caCertificate must be specified together
|
|
- it: missing privateKey values
|
|
set:
|
|
route.enabled: true
|
|
route.tls.certificate: |
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
route.tls.caCertificate: |
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
asserts:
|
|
- failedTemplate:
|
|
errorMessage: certificate, privateKey and caCertificate must be specified together
|
|
- it: missing caCertificate values
|
|
set:
|
|
route.enabled: true
|
|
route.tls.certificate: |
|
|
-----BEGIN CERTIFICATE-----
|
|
...
|
|
-----END CERTIFICATE-----
|
|
route.tls.privateKey: |
|
|
-----BEGIN PRIVATE KEY-----
|
|
...
|
|
-----END PRIVATE KEY-----
|
|
asserts:
|
|
- failedTemplate:
|
|
errorMessage: certificate, privateKey and caCertificate must be specified together
|