Update pylint and split runs more to avoid hangs.

This commit is contained in:
Matt Clay 2019-03-19 09:23:42 -07:00
parent 847a86beef
commit 63ce588382
5 changed files with 22 additions and 6 deletions

View file

@ -2,6 +2,7 @@
from __future__ import absolute_import, print_function
import collections
import itertools
import json
import os
import datetime
@ -112,6 +113,13 @@ class PylintTest(SanitySingleVersion):
module_paths = [p.split(os.path.sep) for p in paths if p.startswith('lib/ansible/modules/')]
module_dirs = sorted(set([p[3] for p in module_paths if len(p) > 4]))
large_module_group_threshold = 500
large_module_groups = [key for key, value in
itertools.groupby(module_paths, lambda p: p[3] if len(p) > 4 else '') if len(list(value)) > large_module_group_threshold]
large_module_group_paths = [p.split(os.path.sep) for p in paths if any(p.startswith('lib/ansible/modules/%s/' % g) for g in large_module_groups)]
large_module_group_dirs = sorted(set([os.path.sep.join(p[3:5]) for p in large_module_group_paths if len(p) > 5]))
contexts = []
remaining_paths = set(paths)
@ -144,6 +152,9 @@ class PylintTest(SanitySingleVersion):
add_context(remaining_paths, 'test', filter_path('test/'))
add_context(remaining_paths, 'hacking', filter_path('hacking/'))
for large_module_group_dir in large_module_group_dirs:
add_context(remaining_paths, 'modules/%s' % large_module_group_dir, filter_path('lib/ansible/modules/%s/' % large_module_group_dir))
for module_dir in module_dirs:
add_context(remaining_paths, 'modules/%s' % module_dir, filter_path('lib/ansible/modules/%s/' % module_dir))

View file

@ -30,13 +30,13 @@ xmltodict < 0.12.0 ; python_version < '2.7' # xmltodict 0.12.0 and later require
lxml < 4.3.0 ; python_version < '2.7' # lxml 4.3.0 and later require python 2.7 or later
pyvmomi < 6.0.0 ; python_version < '2.7' # pyvmomi 6.0.0 and later require python 2.7 or later
pyone == 1.1.9 # newer versions do not pass current integration tests
botocore >= 1.10.0 # adds support for the following AWS services: secretsmanager, fms, and acm-pca
# freeze pylint and its requirements for consistent test results
astroid == 2.0.4
isort == 4.3.4
astroid == 2.2.5
isort == 4.3.15
lazy-object-proxy == 1.3.1
mccabe == 0.6.1
pylint == 2.1.1
typed-ast == 1.1.0
wrapt == 1.10.11
botocore >= 1.10.0 # adds support for the following AWS services: secretsmanager, fms, and acm-pca
pylint == 2.3.1
typed-ast == 1.3.1
wrapt == 1.11.1

View file

@ -10,6 +10,7 @@ disable=
too-many-nested-blocks,
too-many-return-statements,
too-many-statements,
unnecessary-pass,
unused-import,
useless-object-inheritance,
consider-using-dict-comprehension,

View file

@ -49,6 +49,7 @@ disable=
method-hidden,
misplaced-comparison-constant,
missing-docstring,
no-else-raise,
no-else-return,
no-init,
no-member,
@ -71,6 +72,7 @@ disable=
reimported,
relative-import,
signature-differs,
simplifiable-if-expression,
simplifiable-if-statement,
subprocess-popen-preexec-fn,
super-init-not-called,
@ -96,6 +98,7 @@ disable=
unexpected-keyword-arg,
ungrouped-imports,
unidiomatic-typecheck,
unnecessary-pass,
unsubscriptable-object,
unsupported-assignment-operation,
unsupported-delete-operation,

View file

@ -1 +1,2 @@
lib/ansible/module_utils/network/edgeswitch/edgeswitch_interface.py duplicate-string-formatting-argument
test/units/modules/system/test_known_hosts.py ansible-bad-function