Detect addition of executable files

When running pep8 checks, fail if executable
files have accidentally been added.

Co-Authored-By: Eric Harney <eharney@redhat.com>

Closes-Bug: 1566328
Change-Id: I7280c0403cd473cd4b88cfc021d4f605a7bb35f2
This commit is contained in:
Tom Barron 2016-04-04 14:14:07 -04:00
parent 2cb172d6d2
commit 1c2ec9b8cf
8 changed files with 43 additions and 0 deletions

0
manila/cmd/all.py Executable file → Normal file
View File

0
manila/cmd/api.py Executable file → Normal file
View File

0
manila/cmd/data.py Executable file → Normal file
View File

0
manila/cmd/manage.py Executable file → Normal file
View File

0
manila/cmd/scheduler.py Executable file → Normal file
View File

0
manila/cmd/share.py Executable file → Normal file
View File

42
tools/check_exec.py Executable file
View File

@ -0,0 +1,42 @@
#!/usr/bin/python
#
# 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.
# Print a list and return with error if any executable files are found.
# Compatible with both python 2 and 3.
import os.path
import stat
import sys
if len(sys.argv) < 2:
print("Usage: %s <directory>" % sys.argv[0])
sys.exit(1)
directory = sys.argv[1]
executable = []
for root, mydir, myfile in os.walk(directory):
for f in myfile:
path = os.path.join(root, f)
mode = os.lstat(path).st_mode
if stat.S_IXUSR & mode:
executable.append(path)
if executable:
print("Executable files found:")
for f in executable:
print(f)
sys.exit(1)

View File

@ -42,6 +42,7 @@ commands =
tools/cover.sh \ tools/cover.sh \
tools/check_logging.sh \ tools/check_logging.sh \
run_tests.sh run_tests.sh
{toxinidir}/tools/check_exec.py {toxinidir}/manila
{toxinidir}/tools/check_logging.sh {toxinidir}/manila {toxinidir}/tools/check_logging.sh {toxinidir}/manila
[testenv:genconfig] [testenv:genconfig]