mirror of
https://github.com/bjw-s-labs/helm-charts.git
synced 2025-07-03 08:37:03 +02:00
Signed-off-by: solidDoWant <fred.heinecke@yahoo.com> Co-authored-by: Patrick Collins <Patricol@users.noreply.github.com> Co-authored-by: Patrick Collins <patrick.collins@gainbridge.io> Co-authored-by: Lawrence Gil <larrywtf609@gmail.com> Co-authored-by: solidDoWant <fred.heinecke@yahoo.com>
122 lines
3 KiB
YAML
122 lines
3 KiB
YAML
---
|
|
# yaml-language-server: $schema=https://raw.githubusercontent.com/helm-unittest/helm-unittest/main/schema/helm-testsuite.json
|
|
suite: service values
|
|
templates:
|
|
- common.yaml
|
|
values:
|
|
- ../_values/controllers_main_default_container.yaml
|
|
tests:
|
|
- it: ports and services are enabled by default
|
|
set:
|
|
service:
|
|
second:
|
|
type: ClusterIP
|
|
controller: main
|
|
ports:
|
|
first:
|
|
port: 80
|
|
documentSelector: &ServiceSelector
|
|
path: kind
|
|
value: Service
|
|
asserts:
|
|
- containsDocument:
|
|
kind: Service
|
|
apiVersion: v1
|
|
name: RELEASE-NAME
|
|
|
|
- it: service not present when disabled
|
|
values:
|
|
- ../_values/service_main_default.yaml
|
|
set:
|
|
service:
|
|
main:
|
|
enabled: false
|
|
asserts:
|
|
- not: true
|
|
containsDocument:
|
|
kind: Service
|
|
apiVersion: v1
|
|
name: RELEASE-NAME
|
|
|
|
- it: externalTrafficPolicy can be configured for NodePort service
|
|
values:
|
|
- ../_values/service_main_default.yaml
|
|
set:
|
|
service:
|
|
main:
|
|
type: NodePort
|
|
externalTrafficPolicy: Local
|
|
documentSelector: *ServiceSelector
|
|
asserts:
|
|
- equal:
|
|
path: spec.externalTrafficPolicy
|
|
value: Local
|
|
|
|
- it: internalTrafficPolicy can be configured
|
|
values:
|
|
- ../_values/service_main_default.yaml
|
|
set:
|
|
service:
|
|
main:
|
|
internalTrafficPolicy: Local
|
|
documentSelector: *ServiceSelector
|
|
asserts:
|
|
- equal:
|
|
path: spec.internalTrafficPolicy
|
|
value: Local
|
|
|
|
- it: externalTrafficPolicy can be configured for LoadBalancer service
|
|
values:
|
|
- ../_values/service_main_default.yaml
|
|
set:
|
|
service:
|
|
main:
|
|
type: LoadBalancer
|
|
externalTrafficPolicy: Local
|
|
documentSelector: *ServiceSelector
|
|
asserts:
|
|
- equal:
|
|
path: spec.externalTrafficPolicy
|
|
value: Local
|
|
|
|
- it: allocateLoadBalancerNodePorts can be set to true
|
|
values:
|
|
- ../_values/service_main_default.yaml
|
|
set:
|
|
service:
|
|
main:
|
|
type: LoadBalancer
|
|
allocateLoadBalancerNodePorts: true
|
|
documentSelector: *ServiceSelector
|
|
asserts:
|
|
- equal:
|
|
path: spec.allocateLoadBalancerNodePorts
|
|
value: true
|
|
|
|
- it: allocateLoadBalancerNodePorts can be set to false
|
|
values:
|
|
- ../_values/service_main_default.yaml
|
|
set:
|
|
service:
|
|
main:
|
|
type: LoadBalancer
|
|
allocateLoadBalancerNodePorts: false
|
|
documentSelector: *ServiceSelector
|
|
asserts:
|
|
- equal:
|
|
path: spec.allocateLoadBalancerNodePorts
|
|
value: false
|
|
|
|
- it: externalName can be configured for ExternalName service
|
|
values:
|
|
- ../_values/service_main_default.yaml
|
|
set:
|
|
service:
|
|
main:
|
|
type: ExternalName
|
|
externalName: my.database.example.com
|
|
documentSelector: *ServiceSelector
|
|
asserts:
|
|
- equal:
|
|
path: spec.externalName
|
|
value: my.database.example.com
|