디렉토리 구조 및 각 서비스 추가
This commit is contained in:
145
helm/jenkins/unittests/jenkins-controller-ingress-test.yaml
Normal file
145
helm/jenkins/unittests/jenkins-controller-ingress-test.yaml
Normal file
@@ -0,0 +1,145 @@
|
||||
suite: Controller Primary Ingress
|
||||
release:
|
||||
name: my-release
|
||||
namespace: my-namespace
|
||||
templates:
|
||||
- jenkins-controller-ingress.yaml
|
||||
capabilities:
|
||||
majorVersion: 1
|
||||
minorVersion: 18
|
||||
tests:
|
||||
- it: test defaults
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 0
|
||||
- it: enabled
|
||||
set:
|
||||
controller.ingress:
|
||||
enabled: true
|
||||
hostName: jenkins.example.com
|
||||
ingressClassName: nginx
|
||||
tls:
|
||||
- secretName: tlsSecret
|
||||
hosts:
|
||||
- jenkins.example.com
|
||||
asserts:
|
||||
- isKind:
|
||||
of: Ingress
|
||||
- equal:
|
||||
path: apiVersion
|
||||
value: networking.k8s.io/v1beta1
|
||||
- equal:
|
||||
path: metadata.name
|
||||
value: my-release-jenkins
|
||||
- equal:
|
||||
path: metadata.namespace
|
||||
value: my-namespace
|
||||
- matchRegex:
|
||||
path: metadata.labels.helm\.sh/chart
|
||||
pattern: ^jenkins-
|
||||
- isNull:
|
||||
path: metadata.annotations
|
||||
- equal:
|
||||
path: spec
|
||||
value:
|
||||
ingressClassName: nginx
|
||||
rules:
|
||||
- host: jenkins.example.com
|
||||
http:
|
||||
paths:
|
||||
- backend:
|
||||
serviceName: my-release-jenkins
|
||||
servicePort: 8080
|
||||
tls:
|
||||
- hosts:
|
||||
- jenkins.example.com
|
||||
secretName: tlsSecret
|
||||
- it: other values
|
||||
set:
|
||||
controller.ingress:
|
||||
enabled: true
|
||||
hostName: jenkins.example.com
|
||||
ingressClassName: nginx
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: nginx
|
||||
kubernetes.io/tls-acme: "true"
|
||||
paths:
|
||||
- backend:
|
||||
serviceName: ssl-redirect
|
||||
servicePort: use-annotation
|
||||
- backend:
|
||||
serviceName: >-
|
||||
{{ template "jenkins.fullname" . }}
|
||||
servicePort: 8080
|
||||
tls:
|
||||
- secretName: tlsSecret
|
||||
hosts:
|
||||
- jenkins.example.com
|
||||
asserts:
|
||||
- equal:
|
||||
path: metadata.annotations
|
||||
value:
|
||||
kubernetes.io/ingress.class: nginx
|
||||
kubernetes.io/tls-acme: "true"
|
||||
- equal:
|
||||
path: spec
|
||||
value:
|
||||
ingressClassName: nginx
|
||||
rules:
|
||||
- host: jenkins.example.com
|
||||
http:
|
||||
paths:
|
||||
- backend:
|
||||
serviceName: ssl-redirect
|
||||
servicePort: use-annotation
|
||||
- backend:
|
||||
serviceName: my-release-jenkins
|
||||
servicePort: 8080
|
||||
tls:
|
||||
- hosts:
|
||||
- jenkins.example.com
|
||||
secretName: tlsSecret
|
||||
- it: disable helm.sh label
|
||||
set:
|
||||
renderHelmLabels: false
|
||||
controller.ingress:
|
||||
enabled: true
|
||||
hostName: jenkins.example.com
|
||||
ingressClassName: nginx
|
||||
asserts:
|
||||
- equal:
|
||||
path: metadata.labels
|
||||
value:
|
||||
app.kubernetes.io/component: jenkins-controller
|
||||
app.kubernetes.io/instance: my-release
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: jenkins
|
||||
- it: empty paths
|
||||
set:
|
||||
controller.ingress:
|
||||
enabled: true
|
||||
paths:
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.rules
|
||||
value:
|
||||
- http:
|
||||
paths:
|
||||
- backend:
|
||||
serviceName: my-release-jenkins
|
||||
servicePort: 8080
|
||||
- it: single path
|
||||
set:
|
||||
controller.ingress:
|
||||
enabled: true
|
||||
path: /jenkins/
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.rules
|
||||
value:
|
||||
- http:
|
||||
paths:
|
||||
- path: /jenkins/
|
||||
backend:
|
||||
serviceName: my-release-jenkins
|
||||
servicePort: 8080
|
||||
Reference in New Issue
Block a user