19 lines
967 B
Bash
Executable File
19 lines
967 B
Bash
Executable File
#!/bin/sh
|
|
set -eu
|
|
cd "$(dirname "$0")"
|
|
helm lint --strict chart/paperless-ngx -f values.example.yaml
|
|
helm template paperless chart/paperless-ngx -n example -f values.example.yaml | python3 -c '
|
|
import sys, yaml
|
|
objects=[x for x in yaml.safe_load_all(sys.stdin) if x]
|
|
one=lambda kind,name: next(x for x in objects if x["kind"]==kind and x["metadata"]["name"]==name)
|
|
d=one("Deployment","paperless")
|
|
s=one("Service","paperless")
|
|
assert d["spec"]["selector"]["matchLabels"]==s["spec"]["selector"]
|
|
c=d["spec"]["template"]["spec"]["containers"][0]
|
|
assert all(k in c for k in ("startupProbe","readinessProbe","livenessProbe"))
|
|
assert {v["name"] for v in d["spec"]["template"]["spec"]["volumes"]}=={"data","runtime"}
|
|
assert any(e["name"]=="PAPERLESS_DBPASS" and "secretKeyRef" in e["valueFrom"] for e in c["env"])
|
|
assert not any(x["kind"]=="Secret" for x in objects)
|
|
assert one("PersistentVolumeClaim","paperless-data") and one("PersistentVolumeClaim","paperless-runtime")
|
|
'
|