aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xcheck-jinja2.sh40
1 files changed, 33 insertions, 7 deletions
diff --git a/check-jinja2.sh b/check-jinja2.sh
index 0a79364..09c5fa0 100755
--- a/check-jinja2.sh
+++ b/check-jinja2.sh
@@ -1,11 +1,37 @@
#!/bin/bash
set +x
-set -o errexit
+set +o errexit
+
git submodule update --init --remote 2>/dev/null
-GEN_CFG="./pharos/config/utils/generate_config.py"
-for lab_configs in $(find labs/ -name 'pod*.yaml'); do
- while IFS= read -r jinja_templates; do
- echo "$GEN_CFG -y $lab_configs -j $jinja_templates"
- $GEN_CFG -y $lab_configs -j $jinja_templates
- done < <(find pharos/config/installers/ -name '*.j2')
+GEN_CFG='./pharos/config/utils/generate_config.py'
+INSTALLER_ADAPTERS='./pharos/config/installers/*'
+RC=0
+
+# Build a table header, using ';' as column sep
+SUMMARY='PDF/Installer;'
+for adapter in ${INSTALLER_ADAPTERS}; do
+ SUMMARY+="$(basename "${adapter}");"
done
+
+# Iterate all PDFs, check with each installer adapter, log results
+while IFS= read -r lab_config; do
+ SUMMARY+="\n${lab_config#labs/};"
+ for adapter in ${INSTALLER_ADAPTERS}; do
+ pdf_inst=0
+ pdf_inst_pass=0
+ while IFS= read -r jinja_template; do
+ echo -e "\n\n${GEN_CFG} -y ${lab_config} -j ${jinja_template}"
+ if "${GEN_CFG}" -y "${lab_config}" -j "${jinja_template}"; then
+ ((pdf_inst_pass+=1))
+ else
+ RC=1
+ fi
+ ((pdf_inst+=1))
+ done < <(find "${adapter}" -name '*.j2')
+ SUMMARY+="${pdf_inst_pass}/${pdf_inst};"
+ done
+done < <(find 'pharos/config' 'labs' -name 'pod*.yaml')
+
+echo -e '\n'
+echo -e "${SUMMARY}" | sed -e 's/^/;/g' -e 's/;/;| /g' | column -t -e -s ';'
+exit "${RC}"