Merge "Add support to lint the install commands in Dockerfiles"

This commit is contained in:
Jenkins 2016-05-30 11:50:04 +00:00 committed by Gerrit Code Review
commit 330541fe6c
4 changed files with 19 additions and 3 deletions

View File

@ -37,8 +37,8 @@ echo "=== json checks ==="
${TOPLEVEL}/tools/validate-all-json.sh || RES=1
echo "=== maintainer checks ==="
echo "=== dockerfile checks ==="
${TOPLEVEL}/tools/validate-all-maintainer.sh || RES=1
${TOPLEVEL}/tools/validate-all-dockerfiles || RES=1
exit $RES

View File

@ -5,3 +5,7 @@ cd "$(dirname "$REAL_PATH")/.."
find docker -name Dockerfile.j2 -print0 |
xargs -0 tools/validate-maintainer.sh || exit 1
find docker -name Dockerfile.j2 -print0 |
xargs -0 tools/validate-install-command.sh || exit 1

View File

@ -0,0 +1,12 @@
#!/bin/bash
RES=0
for dockerfile in "$@"; do
if grep "apt-get install\|yum install" "$dockerfile"; then
echo "ERROR: $dockerfile has incorrectly formatted install command Should be in the form 'apt-get|yum -y install ...'" >&2
RES=1
fi
done
exit $RES

View File

@ -23,7 +23,7 @@ commands =
flake8 {posargs}
{toxinidir}/tools/validate-all-json.sh
{toxinidir}/tools/validate-all-yaml.sh
{toxinidir}/tools/validate-all-maintainer.sh
{toxinidir}/tools/validate-all-dockerfiles.sh
[testenv:bandit]
commands = bandit -r ansible/library dev docker kolla tests tools