114 lines
2.9 KiB
YAML
114 lines
2.9 KiB
YAML
suite: pod hostPath volume test
|
|
templates:
|
|
- common.yaml
|
|
release:
|
|
name: test-release-name
|
|
namespace: test-release-namespace
|
|
tests:
|
|
- it: should pass with hostPath volume
|
|
set:
|
|
workload:
|
|
workload-name1:
|
|
enabled: true
|
|
primary: true
|
|
type: Deployment
|
|
podSpec: {}
|
|
persistence:
|
|
host-vol:
|
|
enabled: true
|
|
type: hostPath
|
|
hostPath: /some-path
|
|
asserts:
|
|
- documentIndex: &deploymentDoc 0
|
|
isKind:
|
|
of: Deployment
|
|
- documentIndex: *deploymentDoc
|
|
contains:
|
|
path: spec.template.spec.volumes
|
|
content:
|
|
name: host-vol
|
|
hostPath:
|
|
path: /some-path
|
|
|
|
- it: should pass with hostPath volume and type
|
|
set:
|
|
some_path: /some-path
|
|
some_type: DirectoryOrCreate
|
|
workload:
|
|
workload-name1:
|
|
enabled: true
|
|
primary: true
|
|
type: Deployment
|
|
podSpec: {}
|
|
persistence:
|
|
host-vol:
|
|
enabled: true
|
|
type: hostPath
|
|
hostPath: "{{ .Values.some_path }}"
|
|
hostPathType: "{{ .Values.some_type }}"
|
|
asserts:
|
|
- documentIndex: *deploymentDoc
|
|
isKind:
|
|
of: Deployment
|
|
- documentIndex: *deploymentDoc
|
|
contains:
|
|
path: spec.template.spec.volumes
|
|
content:
|
|
name: host-vol
|
|
hostPath:
|
|
path: /some-path
|
|
type: DirectoryOrCreate
|
|
|
|
# Failures
|
|
- it: should fail without hostPath
|
|
set:
|
|
workload:
|
|
some-workload:
|
|
enabled: true
|
|
primary: true
|
|
type: Deployment
|
|
podSpec: {}
|
|
persistence:
|
|
volume1:
|
|
enabled: true
|
|
type: hostPath
|
|
hostPath: ""
|
|
asserts:
|
|
- failedTemplate:
|
|
errorMessage: Persistence - Expected non-empty [hostPath] on [hostPath] type
|
|
|
|
- it: should fail with relative hostPath
|
|
set:
|
|
workload:
|
|
some-workload:
|
|
enabled: true
|
|
primary: true
|
|
type: Deployment
|
|
podSpec: {}
|
|
persistence:
|
|
volume1:
|
|
enabled: true
|
|
type: hostPath
|
|
hostPath: some-path
|
|
asserts:
|
|
- failedTemplate:
|
|
errorMessage: Persistence - Expected [hostPath] to start with a forward slash [/] on [hostPath] type
|
|
|
|
- it: should fail with invalid hostPathType
|
|
set:
|
|
workload:
|
|
some-workload:
|
|
enabled: true
|
|
primary: true
|
|
type: Deployment
|
|
podSpec: {}
|
|
persistence:
|
|
volume1:
|
|
enabled: true
|
|
type: hostPath
|
|
hostPath: /some-path
|
|
hostPathType: invalid
|
|
asserts:
|
|
- failedTemplate:
|
|
errorMessage: Persistence - Expected [hostPathType] to be one of [DirectoryOrCreate, Directory, FileOrCreate, File, Socket, CharDevice, BlockDevice], but got [invalid]
|