cros lint: only allow one of pylintrc or .pylintrc

If both are created in a directory, it's unclear which we should
prefer.  Error out to avoid confusion for everyone.

BUG=chromium:1062377
TEST=`cros lint` works in chromite until a .pylintrc is created

Change-Id: Ie4ebe40a57158e598465c26d3b5e365682acddb4
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/2299085
Reviewed-by: Chris McDonald <cjmcdonald@chromium.org>
Commit-Queue: Mike Frysinger <vapier@chromium.org>
Tested-by: Mike Frysinger <vapier@chromium.org>
diff --git a/cli/cros/cros_lint.py b/cli/cros/cros_lint.py
index 63fba09..61b214a 100644
--- a/cli/cros/cros_lint.py
+++ b/cli/cros/cros_lint.py
@@ -53,10 +53,17 @@
   project_path = _GetProjectPath(path)
   parent = os.path.dirname(path)
   while project_path and parent.startswith(project_path):
-    for rc_name in ('pylintrc', '.pylintrc'):
-      pylintrc = os.path.join(parent, rc_name)
-      if os.path.isfile(pylintrc):
-        return pylintrc
+    pylintrc = os.path.join(parent, 'pylintrc')
+    dotpylintrc = os.path.join(parent, '.pylintrc')
+    # Only allow one of these to exist to avoid confusing which one is used.
+    if os.path.isfile(pylintrc) and os.path.isfile(dotpylintrc):
+      cros_build_lib.Die('%s: Only one of "pylintrc" or ".pylintrc" is allowed',
+                         parent)
+    if os.path.isfile(pylintrc):
+      return pylintrc
+    if os.path.isfile(dotpylintrc):
+      return dotpylintrc
+
     parent = os.path.dirname(parent)
 
   return os.path.join(constants.SOURCE_ROOT, 'chromite', 'pylintrc')