From 5fbe0c5249d89927fe195581f8c3591df03043ac Mon Sep 17 00:00:00 2001 From: Flavio Percoco Date: Fri, 13 Jan 2017 14:09:00 +0100 Subject: [PATCH] Ignore hidden files in directories Don't walk through hidden files. This avoids going through the .git, .tox and other hidden directories that we don't care about. Change-Id: I34b83229775d221299c8b572a7049175debac99d --- tools/process-templates.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tools/process-templates.py b/tools/process-templates.py index 9a06812b60..381214be39 100755 --- a/tools/process-templates.py +++ b/tools/process-templates.py @@ -78,6 +78,18 @@ def process_templates(template_path, role_data_path, overwrite): if os.path.isdir(template_path): for subdir, dirs, files in os.walk(template_path): + + # NOTE(flaper87): Ignore hidden dirs as we don't + # generate templates for those. + # Note the slice assigment for `dirs` is necessary + # because we need to modify the *elements* in the + # dirs list rather than the reference to the list. + # This way we'll make sure os.walk will iterate over + # the shrunk list. os.walk doesn't have an API for + # filtering dirs at this point. + dirs[:] = [d for d in dirs if not d[0] == '.'] + files = [f for f in files if not f[0] == '.'] + for f in files: file_path = os.path.join(subdir, f) # We do two templating passes here: