summaryrefslogtreecommitdiffstats
path: root/jjb/global
diff options
context:
space:
mode:
authorJun Li <matthew.lijun@huawei.com>2016-12-27 05:48:37 +0000
committerGerrit Code Review <gerrit@opnfv.org>2016-12-27 05:48:37 +0000
commit2140c5da2dae4fa58e8e07639271f5e7b5487e26 (patch)
treeaed629708f6a6c69dabae9fa0b09b3d8f49b81c2 /jjb/global
parent53ed9e36a13d03455fc04b3f54ed290037359f6b (diff)
parentcc6e26648833778050e4a59096edee69b538f92b (diff)
Merge "Add YAMLLint for static check"
Diffstat (limited to 'jjb/global')
-rw-r--r--jjb/global/releng-macros.yml33
1 files changed, 33 insertions, 0 deletions
diff --git a/jjb/global/releng-macros.yml b/jjb/global/releng-macros.yml
index cd92480d4..7647a35d3 100644
--- a/jjb/global/releng-macros.yml
+++ b/jjb/global/releng-macros.yml
@@ -355,3 +355,36 @@
name: check-bash-syntax
builders:
- shell: "find . -name '*.sh' | xargs bash -n"
+
+- builder:
+ name: lint-yaml-code
+ builders:
+ - shell: |
+ #!/bin/bash
+ set -o errexit
+ set -o pipefail
+ set -o xtrace
+ export PATH=$PATH:/usr/local/bin/
+
+ # generate and upload lint log
+ echo "Running yaml code on $PROJECT ..."
+
+ # Ensure we start with a clean environment
+ rm -f yaml-violation.log lint.log
+
+ # Get number of yaml violations. If none, this will be an
+ # empty string: ""
+ find . \
+ -path './releng_yamllint' -prune -o \
+ -path './.tox' -prune -o \
+ -type f -name "*.yml" -print \
+ -o -name "*.yaml" -print | \
+ xargs yamllint > yaml-violation.log || true
+
+ if [ -s "yaml-violation.log" ]; then
+ SHOWN=$(cat yaml-violation.log| grep -v "^$" |wc -l)
+ echo -e "First $SHOWN shown\n---" > lint.log
+ cat yaml-violation.log >> lint.log
+ sed -r -i '4,$s/^/ /g' lint.log
+ fi
+