emit clean kube-bench JSON report
Kube-bench CIS scan / Scan ephemeral K3s cluster (push) Failing after 1m21s

This commit is contained in:
2026-08-11 19:00:11 -04:00
parent 992f2e2b07
commit 3b1ca2a468
2 changed files with 18 additions and 22 deletions
+2 -10
View File
@@ -74,19 +74,11 @@ jobs:
kubectl apply -f ci/kube-bench-k3s-job.yaml
kubectl wait --for=condition=complete job/kube-bench -n kube-bench --timeout=180s
job_rc=$?
kubectl logs -n kube-bench job/kube-bench > artifacts/kube-bench-k3s-cis-1.7.raw || true
awk '
BEGIN {capture = 0}
!capture && index($0, "{") > 0 {
sub(/^[^{]*/, "")
capture = 1
}
capture {print}
' artifacts/kube-bench-k3s-cis-1.7.raw > artifacts/kube-bench-k3s-cis-1.7.json
kubectl logs -n kube-bench job/kube-bench > artifacts/kube-bench-k3s-cis-1.7.json || true
if ! jq -e . artifacts/kube-bench-k3s-cis-1.7.json >/dev/null; then
echo "kube-bench did not produce valid JSON" >&2
cat artifacts/kube-bench-k3s-cis-1.7.raw
cat artifacts/kube-bench-k3s-cis-1.7.json
exit 1
fi
+16 -12
View File
@@ -24,18 +24,22 @@ spec:
- name: kube-bench
image: docker.io/aquasec/kube-bench:v0.16.0
command:
- kube-bench
- run
- --benchmark
- k3s-cis-1.7
# K3d control-plane nodes run in containers without systemd journals.
# These checks require journalctl and are not applicable to this CI topology.
- --skip
- 1.4.1,1.4.2
# CI publishes findings as an artifact. Findings are not a merge gate yet.
- --exit-code
- "0"
- --json
- /bin/sh
- -c
- |
set +e
kube-bench run \
--benchmark k3s-cis-1.7 \
--skip 1.4.1,1.4.2 \
--exit-code 0 \
--json \
>/tmp/kube-bench.json 2>/tmp/kube-bench.stderr
scan_rc=$?
cat /tmp/kube-bench.json
if [ "$scan_rc" -ne 0 ]; then
cat /tmp/kube-bench.stderr >&2
fi
exit "$scan_rc"
securityContext:
privileged: true
volumeMounts: