482dbcac29
This change adds a zuul check job to export any templated python contained in the helm charts and scan it with bandit for any potential security flaws. This also adds two nosec comments on the instances of subprocess used as they currently do not appear to be malicious, as well as changing the endpoint_update python code to prevent sql injection, which satisfies bandit code B608. Change-Id: I2212d26514c3510353d16a4592893dd2e85cb369
17 lines
608 B
Bash
Executable File
17 lines
608 B
Bash
Executable File
#!/bin/bash
|
|
|
|
EXCLUDES="helm-toolkit doc tests tools logs tmp roles playbooks releasenotes zuul.d python-files"
|
|
DIRS=`ls -d */ | cut -f1 -d'/'`
|
|
|
|
for EX in $EXCLUDES; do
|
|
DIRS=`echo $DIRS | sed "s/\b$EX\b//g"`
|
|
done
|
|
|
|
for DIR in $DIRS; do
|
|
PYFILES=$(helm template $DIR | yq 'select(.data != null) | .data | to_entries | map(select(.key | test(".*\\.py"))) | select(length > 0) | values[] | {(.key) : (.value)}' | jq -s add)
|
|
PYKEYS=$(echo "$PYFILES" | jq -r 'select(. != null) | keys[]')
|
|
for KEY in $PYKEYS; do
|
|
echo "$PYFILES" | jq -r --arg KEY "$KEY" '.[$KEY]' > ./python-files/"$DIR-$KEY"
|
|
done
|
|
done
|