130 lines
3.4 KiB
YAML
130 lines
3.4 KiB
YAML
suite: Jenkins Agent Service
|
|
release:
|
|
name: my-release
|
|
namespace: my-namespace
|
|
templates:
|
|
- jenkins-agent-svc.yaml
|
|
tests:
|
|
- it: default tests
|
|
asserts:
|
|
- isKind:
|
|
of: Service
|
|
- equal:
|
|
path: apiVersion
|
|
value: v1
|
|
- equal:
|
|
path: metadata.name
|
|
value: my-release-jenkins-agent
|
|
- 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: agent-listener
|
|
port: 50000
|
|
targetPort: 50000
|
|
selector:
|
|
app.kubernetes.io/component: jenkins-controller
|
|
app.kubernetes.io/instance: my-release
|
|
type: ClusterIP
|
|
- it: other values
|
|
set:
|
|
controller:
|
|
agentListenerServiceAnnotations:
|
|
key: value
|
|
agentListenerPort: 55555
|
|
asserts:
|
|
- equal:
|
|
path: metadata.annotations
|
|
value:
|
|
key: value
|
|
- equal:
|
|
path: spec
|
|
value:
|
|
ports:
|
|
- name: agent-listener
|
|
port: 55555
|
|
targetPort: 55555
|
|
selector:
|
|
app.kubernetes.io/component: jenkins-controller
|
|
app.kubernetes.io/instance: my-release
|
|
type: ClusterIP
|
|
- it: node port random
|
|
set:
|
|
controller:
|
|
agentListenerServiceType: NodePort
|
|
asserts:
|
|
- equal:
|
|
path: spec
|
|
value:
|
|
ports:
|
|
- name: agent-listener
|
|
port: 50000
|
|
targetPort: 50000
|
|
selector:
|
|
app.kubernetes.io/component: jenkins-controller
|
|
app.kubernetes.io/instance: my-release
|
|
type: NodePort
|
|
- it: node port defined
|
|
set:
|
|
controller:
|
|
agentListenerServiceType: NodePort
|
|
agentListenerNodePort: 32123
|
|
asserts:
|
|
- equal:
|
|
path: spec
|
|
value:
|
|
ports:
|
|
- name: agent-listener
|
|
port: 50000
|
|
targetPort: 50000
|
|
nodePort: 32123
|
|
selector:
|
|
app.kubernetes.io/component: jenkins-controller
|
|
app.kubernetes.io/instance: my-release
|
|
type: NodePort
|
|
- it: load balancer
|
|
set:
|
|
controller:
|
|
agentListenerServiceType: LoadBalancer
|
|
agentListenerLoadBalancerIP: 10.10.10.10
|
|
asserts:
|
|
- equal:
|
|
path: spec
|
|
value:
|
|
ports:
|
|
- name: agent-listener
|
|
port: 50000
|
|
targetPort: 50000
|
|
selector:
|
|
app.kubernetes.io/component: jenkins-controller
|
|
app.kubernetes.io/instance: my-release
|
|
type: LoadBalancer
|
|
loadBalancerIP: 10.10.10.10
|
|
loadBalancerSourceRanges:
|
|
- 0.0.0.0/0
|
|
- 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
|
|
- it: disable agent service
|
|
set:
|
|
controller:
|
|
agentListenerEnabled: false
|
|
asserts:
|
|
- hasDocuments:
|
|
count: 0 |