]> review.fuel-infra Code Review - openstack-build/heat-build.git/commitdiff
Gate on certain pyflakes failures
authorSteven Dake <sdake@redhat.com>
Wed, 27 Feb 2013 22:23:48 +0000 (15:23 -0700)
committerGerrit Code Review <review@openstack.org>
Thu, 28 Feb 2013 20:21:02 +0000 (20:21 +0000)
To prevent recent gating problems from typos, an
import not used and redefinition of function problems in
the source code have become gating.

Fixes: Bug #1131275
Change-Id: I7011f3ac5940afc70c38758e67a2222a66e625c3
Signed-off-by: Steven Dake <sdake@redhat.com>
heat/engine/service.py
heat/tests/__init__.py
heat/tests/test_common_policy.py
heat/tests/test_security_group.py
heat/tests/test_vpc.py
tools/pyflakes-bypass.py [new file with mode: 0644]
tools/run_pep8.sh

index c00bf1a43ffc28460fef95bee11b80f3774d2a79..27cd83bcd77ffa0f0473ad3011d9849ab9b32856 100644 (file)
@@ -28,7 +28,7 @@ from heat.common import exception
 from heat.common import identifier
 from heat.engine import parser
 from heat.engine import resource
-from heat.engine import resources
+from heat.engine import resources  # pyflakes_bypass review 23102
 from heat.engine import watchrule
 
 from heat.openstack.common import log as logging
index 70f0b8325874528e77fc62472b3ea6720151b255..2d2be4072cb6a75c26c21b5fb35c5e72ff326bd4 100644 (file)
@@ -28,9 +28,9 @@ def reset_db():
 
 
 def setup():
-    import mox  # Fail fast if you don't have mox. Workaround for bug 810424
+    import mox  # pyflakes_bypass   Workaround for bug 810424
     from heat.db import migration
-    from heat import db
+    from heat import db  # pyflakes_bypass review 23102
 
     reset_db()
     migration.db_sync()
index 8730d8f98540fec13e4c57ad78050c722fe069ae..8f64a34657a80b0519fcfa9c75d8fc01b45fdaed 100644 (file)
@@ -20,7 +20,8 @@ from nose.plugins.attrib import attr
 from oslo.config import cfg
 import unittest
 
-import heat.api
+import heat.api  # pyflakes_bypass  review 23102
+
 from heat.common import context
 from heat.common import policy
 from heat.common import exception
index 58418880a9ed4887a3bda3e477b3e4e3823a6cf3..0364e8c9d2bf886ec4cb378cd5efe1562a42fb10 100644 (file)
@@ -22,7 +22,7 @@ from heat.engine import clients
 from heat.common import context
 from heat.common import template_format
 from heat.engine import parser
-import heat.engine.resources
+import heat.engine.resources  # pyflakes_bypass review 23102
 from heat.tests.v1_1 import fakes
 
 from novaclient.v1_1 import security_groups as nova_sg
index 015fd2ebfa607e7d4c3da5ad9cc15c70caf85e35..9bc2abe50f8424beb1b1481258470d6b21f00bc5 100644 (file)
@@ -22,7 +22,7 @@ from heat.common import context
 from heat.common import exception
 from heat.common import template_format
 from heat.engine import parser
-import heat.engine.resources
+import heat.engine.resources  # pyflakes_bypass review 23102
 
 try:
     from quantumclient.common.exceptions import QuantumClientException
diff --git a/tools/pyflakes-bypass.py b/tools/pyflakes-bypass.py
new file mode 100644 (file)
index 0000000..55a7764
--- /dev/null
@@ -0,0 +1,15 @@
+from pyflakes.scripts import pyflakes
+from pyflakes.checker import Checker
+
+
+def report_with_bypass(self, messageClass, *args, **kwargs):
+    text_lineno = args[0] - 1
+    with open(self.filename, 'r') as code:
+        if code.readlines()[text_lineno].find('pyflakes_bypass') >= 0:
+            return
+    self.messages.append(messageClass(self.filename, *args, **kwargs))
+
+# monkey patch checker to support bypass
+Checker.report = report_with_bypass
+
+pyflakes.main()
index 9a8a743af83a96fcbe1e2937d07e547dfa5e645a..a392184339997ac18345ca8aff35fc1243ecca5a 100755 (executable)
@@ -15,3 +15,6 @@ ${PEP8} ${EXCLUDE} .
 
 # Check binaries without py extension
 ${PEP8} bin/heat-api bin/heat-api-cfn bin/heat-api-cloudwatch bin/heat-cfn bin/heat-engine bin/heat-watch
+
+! python tools/pyflakes-bypass.py heat/ | grep "imported but unused\|redefinition of function"
+