159 lines
4.1 KiB
YAML
159 lines
4.1 KiB
YAML
suite: Jenkins Controller
|
|
release:
|
|
name: my-release
|
|
namespace: my-namespace
|
|
templates:
|
|
- jenkins-controller-svc.yaml
|
|
tests:
|
|
- it: default tests
|
|
asserts:
|
|
- isKind:
|
|
of: Service
|
|
- equal:
|
|
path: apiVersion
|
|
value: v1
|
|
- 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:
|
|
ports:
|
|
- name: http
|
|
port: 8080
|
|
targetPort: 8080
|
|
selector:
|
|
app.kubernetes.io/component: jenkins-controller
|
|
app.kubernetes.io/instance: my-release
|
|
type: ClusterIP
|
|
- it: other values
|
|
set:
|
|
controller:
|
|
serviceLabels:
|
|
label: label-value
|
|
serviceAnnotations:
|
|
key: value
|
|
clusterIP: 10.10.10.11
|
|
servicePort: 8888
|
|
targetPort: 7777
|
|
extraPorts:
|
|
- name: BuildInfoProxy
|
|
port: 9000
|
|
asserts:
|
|
- equal:
|
|
path: metadata.labels.label
|
|
value: label-value
|
|
- equal:
|
|
path: metadata.annotations
|
|
value:
|
|
key: value
|
|
- equal:
|
|
path: spec
|
|
value:
|
|
clusterIP: 10.10.10.11
|
|
ports:
|
|
- name: http
|
|
port: 8888
|
|
targetPort: 7777
|
|
- name: BuildInfoProxy
|
|
port: 9000
|
|
targetPort: 9000
|
|
selector:
|
|
app.kubernetes.io/component: jenkins-controller
|
|
app.kubernetes.io/instance: my-release
|
|
type: ClusterIP
|
|
- it: extraPort with targetPort
|
|
set:
|
|
controller:
|
|
serviceLabels:
|
|
label: label-value
|
|
serviceAnnotations:
|
|
key: value
|
|
clusterIP: 10.10.10.11
|
|
servicePort: 8888
|
|
targetPort: 7777
|
|
extraPorts:
|
|
- name: https
|
|
port: 443
|
|
targetPort: 8080
|
|
asserts:
|
|
- equal:
|
|
path: metadata.labels.label
|
|
value: label-value
|
|
- equal:
|
|
path: metadata.annotations
|
|
value:
|
|
key: value
|
|
- equal:
|
|
path: spec
|
|
value:
|
|
clusterIP: 10.10.10.11
|
|
ports:
|
|
- name: http
|
|
port: 8888
|
|
targetPort: 7777
|
|
- name: https
|
|
port: 443
|
|
targetPort: 8080
|
|
selector:
|
|
app.kubernetes.io/component: jenkins-controller
|
|
app.kubernetes.io/instance: my-release
|
|
type: ClusterIP
|
|
- it: node port
|
|
set:
|
|
controller:
|
|
serviceType: NodePort
|
|
nodePort: 11111
|
|
asserts:
|
|
- equal:
|
|
path: spec
|
|
value:
|
|
ports:
|
|
- name: http
|
|
port: 8080
|
|
targetPort: 8080
|
|
nodePort: 11111
|
|
selector:
|
|
app.kubernetes.io/component: jenkins-controller
|
|
app.kubernetes.io/instance: my-release
|
|
type: NodePort
|
|
- it: load balancer
|
|
set:
|
|
controller:
|
|
serviceType: LoadBalancer
|
|
loadBalancerIP: 10.10.10.10
|
|
asserts:
|
|
- equal:
|
|
path: spec
|
|
value:
|
|
loadBalancerIP: 10.10.10.10
|
|
loadBalancerSourceRanges:
|
|
- 0.0.0.0/0
|
|
ports:
|
|
- name: http
|
|
port: 8080
|
|
targetPort: 8080
|
|
selector:
|
|
app.kubernetes.io/component: jenkins-controller
|
|
app.kubernetes.io/instance: my-release
|
|
type: LoadBalancer
|
|
- it: disable helm.sh label
|
|
set:
|
|
renderHelmLabels: false
|
|
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
|