diff options
author | 2017-09-21 02:13:55 +0200 | |
---|---|---|
committer | 2017-09-24 19:47:35 +0200 | |
commit | 5555a6edb45683270a8f2935cd9aa845457e9bc7 (patch) | |
tree | cd9b2238d6494ade7b6bf01d10322eb51e7d8615 | |
parent | 45ff23c696aff6584a29d7cf7398e130b3858405 (diff) |
PDF: Add result summary to check-jinja2
Apart from Pod Descritpro Files for OPNFV PODs, also validate the Pharos
PDF template itself. While at it, fix shellcheck warnings.
Sample output:
| PDF/Installer | apex | compass4nfv | daisy | joid |
| pharos/config/pod1.yaml | 1/1 | 12/12 | 1/1 | 1/1 |
| intel/pod18.yaml | 1/1 | 12/12 | 1/1 | 1/1 |
| orange/pod1.yaml | 0/1 | 4/12 | 0/1 | 0/1 |
| arm/pod5.yaml | 1/1 | 12/12 | 1/1 | 1/1 |
| ericsson/pod1.yaml | 1/1 | 12/12 | 1/1 | 1/1 |
| ericsson/pod2.yaml | 1/1 | 12/12 | 1/1 | 1/1 |
| lf/pod4.yaml | 1/1 | 12/12 | 1/1 | 1/1 |
| zte/pod3.yaml | 1/1 | 12/12 | 1/1 | 1/1 |
| zte/pod1.yaml | 1/1 | 12/12 | 1/1 | 1/1 |
| zte/pod2.yaml | 1/1 | 12/12 | 1/1 | 1/1 |
Change-Id: Iba46a7cc62c80ccb987879ce94ffe5f0bbb23304
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
-rwxr-xr-x | check-jinja2.sh | 40 |
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}" |