Enable pep8 on ./tools directory

This patch fixes the pep8 issues of the tool scripts and
configures tox to run pep8 on the tools directory.

Change-Id: Ifed21e19dd2b382790a1e2a90d5153a8845c4b64
This commit is contained in:
Balazs Gibizer 2014-11-24 16:01:03 +01:00
parent 30824df1a4
commit 062ac3313d
6 changed files with 31 additions and 32 deletions

View File

@ -17,13 +17,14 @@
"""pylint error checking.""" """pylint error checking."""
from __future__ import print_function
import json import json
import re import re
import sys import sys
from pylint import lint from pylint import lint
from pylint.reporters import text from six.moves import cStringIO as StringIO # noqa
from six.moves import cStringIO as StringIO
# These variables will be useful if we will need to skip some pylint checks # These variables will be useful if we will need to skip some pylint checks
ignore_codes = [] ignore_codes = []
@ -65,8 +66,9 @@ class LintOutput(object):
@classmethod @classmethod
def from_msg_to_dict(cls, msg): def from_msg_to_dict(cls, msg):
"""From the output of pylint msg, to a dict, where each key """From the output of pylint msg, to a dict.
is a unique error identifier, value is a list of LintOutput
Each key is a unique error identifier, value is a list of LintOutput
""" """
result = {} result = {}
for line in msg.splitlines(): for line in msg.splitlines():
@ -108,9 +110,9 @@ class ErrorKeys(object):
@classmethod @classmethod
def print_json(cls, errors, output=sys.stdout): def print_json(cls, errors, output=sys.stdout):
print >>output, "# automatically generated by tools/lintstack.py" print("# automatically generated by tools/lintstack.py", file=output)
for i in sorted(errors.keys()): for i in sorted(errors.keys()):
print >>output, json.dumps(i) print(json.dumps(i), file=output)
@classmethod @classmethod
def from_file(cls, filename): def from_file(cls, filename):
@ -134,7 +136,7 @@ def run_pylint():
def generate_error_keys(msg=None): def generate_error_keys(msg=None):
print "Generating", KNOWN_PYLINT_EXCEPTIONS_FILE print("Generating", KNOWN_PYLINT_EXCEPTIONS_FILE)
if msg is None: if msg is None:
msg = run_pylint() msg = run_pylint()
errors = LintOutput.from_msg_to_dict(msg) errors = LintOutput.from_msg_to_dict(msg)
@ -143,41 +145,41 @@ def generate_error_keys(msg=None):
def validate(newmsg=None): def validate(newmsg=None):
print "Loading", KNOWN_PYLINT_EXCEPTIONS_FILE print("Loading", KNOWN_PYLINT_EXCEPTIONS_FILE)
known = ErrorKeys.from_file(KNOWN_PYLINT_EXCEPTIONS_FILE) known = ErrorKeys.from_file(KNOWN_PYLINT_EXCEPTIONS_FILE)
if newmsg is None: if newmsg is None:
print "Running pylint. Be patient..." print("Running pylint. Be patient...")
newmsg = run_pylint() newmsg = run_pylint()
errors = LintOutput.from_msg_to_dict(newmsg) errors = LintOutput.from_msg_to_dict(newmsg)
print ("Unique errors reported by pylint: was %d, now %d." print("Unique errors reported by pylint: was %d, now %d."
% (len(known), len(errors))) % (len(known), len(errors)))
passed = True passed = True
for err_key, err_list in errors.items(): for err_key, err_list in errors.items():
for err in err_list: for err in err_list:
if err_key not in known: if err_key not in known:
print err.lintoutput print(err.lintoutput)
print print()
passed = False passed = False
if passed: if passed:
print "Congrats! pylint check passed." print("Congrats! pylint check passed.")
redundant = known - set(errors.keys()) redundant = known - set(errors.keys())
if redundant: if redundant:
print "Extra credit: some known pylint exceptions disappeared." print("Extra credit: some known pylint exceptions disappeared.")
for i in sorted(redundant): for i in sorted(redundant):
print json.dumps(i) print(json.dumps(i))
print "Consider regenerating the exception file if you will." print("Consider regenerating the exception file if you will.")
else: else:
print ("Please fix the errors above. If you believe they are false" print("Please fix the errors above. If you believe they are false"
" positives, run 'tools/lintstack.py generate' to overwrite.") " positives, run 'tools/lintstack.py generate' to overwrite.")
sys.exit(1) sys.exit(1)
def usage(): def usage():
print """Usage: tools/lintstack.py [generate|validate] print("""Usage: tools/lintstack.py [generate|validate]
To generate pylint_exceptions file: tools/lintstack.py generate To generate pylint_exceptions file: tools/lintstack.py generate
To validate the current commit: tools/lintstack.py To validate the current commit: tools/lintstack.py
""" """)
def main(): def main():

View File

@ -56,7 +56,6 @@ def make_test_data(conn, name, meter_type, unit, volume, random_min,
increment = datetime.timedelta(minutes=interval) increment = datetime.timedelta(minutes=interval)
print('Adding new events for meter %s.' % (name)) print('Adding new events for meter %s.' % (name))
# Generate events # Generate events
n = 0 n = 0
@ -70,7 +69,6 @@ def make_test_data(conn, name, meter_type, unit, volume, random_min,
else: else:
total_volume += random.uniform(random_min, random_max) total_volume += random.uniform(random_min, random_max)
c = sample.Sample(name=name, c = sample.Sample(name=name,
type=meter_type, type=meter_type,
unit=unit, unit=unit,
@ -191,7 +189,7 @@ def main():
start = datetime.datetime.utcnow() - datetime.timedelta(days=args.start) start = datetime.datetime.utcnow() - datetime.timedelta(days=args.start)
end = datetime.datetime.utcnow() + datetime.timedelta(days=args.end) end = datetime.datetime.utcnow() + datetime.timedelta(days=args.end)
make_test_data(conn = conn, make_test_data(conn=conn,
name=args.counter, name=args.counter,
meter_type=args.type, meter_type=args.type,
unit=args.unit, unit=args.unit,

View File

@ -56,7 +56,7 @@ def make_test_data(conn, start, end, interval, event_types):
data = [] data = []
for i in range(event_types): for i in range(event_types):
traits = [models.Trait('id1_%d' % i, 1, str(uuid.uuid4())), traits = [models.Trait('id1_%d' % i, 1, str(uuid.uuid4())),
models.Trait('id2_%d' % i, 2, random.randint(1,10)), models.Trait('id2_%d' % i, 2, random.randint(1, 10)),
models.Trait('id3_%d' % i, 3, random.random()), models.Trait('id3_%d' % i, 3, random.random()),
models.Trait('id4_%d' % i, 4, timestamp)] models.Trait('id4_%d' % i, 4, timestamp)]
data.append(models.Event(str(uuid.uuid4()), data.append(models.Event(str(uuid.uuid4()),
@ -121,8 +121,7 @@ def main():
start=start, start=start,
end=end, end=end,
interval=args.interval, interval=args.interval,
event_types=args.event_types event_types=args.event_types)
)
if __name__ == '__main__': if __name__ == '__main__':

View File

@ -53,9 +53,8 @@ def show_resources(db, args):
value = totals[0]['max'] value = totals[0]['max']
else: else:
value = totals[0]['sum'] value = totals[0]['sum']
print(' %s (%s): %s' % \ print(' %s (%s): %s' %
(meter['counter_name'], meter['counter_type'], (meter['counter_name'], meter['counter_type'], value))
value))
def show_total_resources(db, args): def show_total_resources(db, args):
@ -115,7 +114,7 @@ def main(argv):
extra_args = cfg.CONF( extra_args = cfg.CONF(
sys.argv[1:], sys.argv[1:],
# NOTE(dhellmann): Read the configuration file(s) for the # NOTE(dhellmann): Read the configuration file(s) for the
#ceilometer collector by default. # ceilometer collector by default.
default_config_files=['/etc/ceilometer/ceilometer.conf'], default_config_files=['/etc/ceilometer/ceilometer.conf'],
) )
db = storage.get_connection_from_config(cfg.CONF) db = storage.get_connection_from_config(cfg.CONF)

View File

@ -17,6 +17,7 @@ from oslo.config import cfg
from ceilometer import storage from ceilometer import storage
def main(argv): def main(argv):
cfg.CONF([], project='ceilometer') cfg.CONF([], project='ceilometer')
if os.getenv("CEILOMETER_TEST_HBASE_URL"): if os.getenv("CEILOMETER_TEST_HBASE_URL"):

View File

@ -70,7 +70,7 @@ commands =
[flake8] [flake8]
ignore = ignore =
builtins = _ builtins = _
exclude=.venv,.git,.tox,dist,doc,./ceilometer/openstack/common,*lib/python*,*egg,tools,nova_tests,build exclude=.venv,.git,.tox,dist,doc,./ceilometer/openstack/common,*lib/python*,*egg,nova_tests,build
show-source = True show-source = True
[hacking] [hacking]