diff options
Diffstat (limited to 'src/lib/Client/Tools/POSIX.py')
-rw-r--r-- | src/lib/Client/Tools/POSIX.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/Client/Tools/POSIX.py b/src/lib/Client/Tools/POSIX.py index 049b90d32..5e1507bbd 100644 --- a/src/lib/Client/Tools/POSIX.py +++ b/src/lib/Client/Tools/POSIX.py @@ -116,6 +116,7 @@ class POSIX(Bcfg2.Client.Tools.Tool): setup.parse([]) ppath = setup['ppath'] max_copies = setup['max_copies'] + prune_list = list() def canInstall(self, entry): """Check if entry is complete for installation.""" @@ -304,7 +305,7 @@ class POSIX(Bcfg2.Client.Tools.Tool): try: entries = ['/'.join([entry.get('name'), ent]) \ for ent in os.listdir(entry.get('name'))] - ex_ents = [e for e in entries if e not in modlist] + ex_ents = [e for e in entries if e not in modlist and e not in self.prune_list] if ex_ents: pruneTrue = False self.logger.debug("Directory %s contains extra entries:" % \ @@ -317,6 +318,7 @@ class POSIX(Bcfg2.Client.Tools.Tool): entry.set('qtest', nqtext) [entry.append(XML.Element('Prune', path=x)) \ for x in ex_ents] + self.prune_list += ex_ents except OSError: ex_ents = [] pruneTrue = True |