From: YAMAMOTO Takashi Date: Wed, 3 Dec 2014 06:29:02 +0000 (+0900) Subject: tox.ini: Prevent casual addition of bash dependency X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=846ae08d877ea4537dcc706ecf8d1dbf3cc9bfc7;p=openstack-build%2Fneutron-build.git tox.ini: Prevent casual addition of bash dependency While bash is not available on every environments, there seems to be a tendency to introduce more bash dependency very casually. This check is intended to be a reminder to give people a chance to consider alternatives. Related-Bug: #1398266 Change-Id: I5103e0d7c111880d9a02dd93de56c567066ed14c --- diff --git a/tools/check_bash.sh b/tools/check_bash.sh new file mode 100644 index 000000000..e9d178eeb --- /dev/null +++ b/tools/check_bash.sh @@ -0,0 +1,31 @@ +#! /bin/sh + +# Copyright (C) 2014 VA Linux Systems Japan K.K. +# Copyright (C) 2014 YAMAMOTO Takashi +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +# The purpose of this script is to avoid casual introduction of more +# bash dependency. Please consider alternatives before commiting code +# which uses bash specific features. + +# Ignore comments, but include shebangs +OBSERVED=$(grep -E '^([^#]|#!).*bash' tox.ini tools/* | wc -l) +EXPECTED=5 +if [ ${EXPECTED} -ne ${OBSERVED} ]; then + echo Unexpected number of bash usages are detected. + echo Please read the comment in $0 + exit 1 +fi +exit 0 diff --git a/tox.ini b/tox.ini index 2e7d2e48d..311bcadc2 100644 --- a/tox.ini +++ b/tox.ini @@ -44,6 +44,7 @@ downloadcache = ~/cache/pip [testenv:pep8] commands = + sh ./tools/check_bash.sh flake8 neutron-db-manage check_migration sh -c "find neutron -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"