2026-09-05 11:51:27 +02:00
#!/usr/bin/env bash
set -euo pipefail
dir = $( cd -- " $( dirname -- " ${ BASH_SOURCE [0] } " ) " && pwd ) ; work = $( mktemp -d) ; trap 'rm -rf "${work}"' EXIT
2026-10-14 20:16:26 +02:00
sh -n " $dir /install.sh" " $dir /update-outpost-images.sh" ; bash -n " $dir /render.sh" " $dir /create-ci-kubeconfig.sh" " $dir /test.sh"
2026-09-05 11:51:27 +02:00
" $dir /render.sh" " $work /authentik.yaml"
grep -Eq '^kind: Secret$' " $work /authentik.yaml" && { echo "Chart rendered a Secret" >& 2; exit 1; }
2026-10-14 20:16:26 +02:00
image = ghcr.io/yannh/kubeconform:v0.7.0
2026-09-05 11:51:27 +02:00
for file in " $work /authentik.yaml" " $dir /authentik-outpost-path.yaml" " $dir /authentik-media-redirect.yaml" " $dir /ci-deployer.yaml" ; do docker run --rm -i " $image " -strict -exit-on-error -ignore-missing-schemas -summary < " $file " ; done
2026-10-14 20:16:26 +02:00
grep -q 'replicas: 2' " $work /authentik.yaml"
grep -q 'cpu: 500m' " $work /authentik.yaml"
if grep -Eq 'router.middlewares:|inFlightReq:|rateLimit:' " $work /authentik.yaml" " $dir /authentik-outpost-path.yaml" ; then
echo "Public Authentik request limiting must remain disabled." >& 2
exit 1
fi
2026-09-05 11:51:27 +02:00
echo "Authentik public desired state is valid and contains no Secrets."