Fix "No closing quotation" error when building with tox

Apparently # is treated as a comment inside the string and as
consequence the rest of the command gets stripped. This patch drops
those comments from the bashate command.

This patch also moves the bashate command to its own script under
tools/.

Change-Id: Ic44bb64419ca1465f69c91fd579e8c84d69f84b8
Closes-Bug: #1527562
This commit is contained in:
Lucas Alvares Gomes 2015-12-21 16:22:00 +08:00
parent 2630ecee5e
commit d7c41ebf9b
2 changed files with 28 additions and 14 deletions

27
tools/run_bashate.sh Executable file
View File

@ -0,0 +1,27 @@
#!/bin/bash
#
# 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.
find "$@" -not \( -type d -name .?\* -prune \) \
-type f \
-not -name \*.swp \
-not -name \*~ \
-not -name \*.xml \
-not -name \*.template \
-not -wholename \*scripts/configure-vm \
\( \
-name \*.sh -or \
-wholename \*/lib/\* -or \
-wholename \*/tools/\* \
\) \
-print0 | xargs -0 bashate -v -iE006 -eE005,E042

15
tox.ini
View File

@ -28,20 +28,7 @@ commands =
flake8 {posargs}
# Run bashate during pep8 runs to ensure violations are caught by
# the check and gate queues.
bash -c "find {toxinidir}/devstack \
-not \( -type d -name .?\* -prune \) \ # prune all 'dot' dirs
-type f \ # only files
-not -name \*.swp \ # skip editor files
-not -name \*~ \ # skip editor files
-not -name \*.xml \ # skip xml files
-not -name \*.template \ # skip template files
-not -wholename \*scripts/configure-vm \ # that's a python script
\( \
-name \*.sh -or \ # add files eding with .sh
-wholename \*/lib/\* -or \ # add files under lib/
-wholename \*/tools/\* \ # add files under tools/
\) \
-print0 | xargs -0 bashate -v -iE006 -eE005,E042"
{toxinidir}/tools/run_bashate.sh {toxinidir}/devstack
# Check that .po and .pot files are valid:
bash -c "find ironic -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"