Introduce ignore list for content scans
[releng-anteater.git] / anteater / src / get_lists.py
index d7b0c47..17de7cb 100644 (file)
     Gathers various values from the gate check yaml file and return them to the
     calling instance
 """
     Gathers various values from the gate check yaml file and return them to the
     calling instance
 """
+from __future__ import absolute_import
 
 
-import anteater.utils.anteater_logger as antlog
-import ConfigParser
+import logging
+import six.moves.configparser
 import copy
 import os
 import yaml
 import re
 
 import copy
 import os
 import yaml
 import re
 
-config = ConfigParser.RawConfigParser()
+
+config = six.moves.configparser.RawConfigParser()
 config.read('anteater.conf')
 config.read('anteater.conf')
-logger = antlog.Logger(__name__).getLogger()
+logger = logging.getLogger(__name__)
 master_list = config.get('config', 'master_list')
 
 with open(master_list, 'r') as f:
 master_list = config.get('config', 'master_list')
 
 with open(master_list, 'r') as f:
@@ -83,9 +85,11 @@ class GetLists(object):
         file_name = os.path.basename(patch_file)
         try:
             binary_hash = (yl['binaries'][project][file_name])
         file_name = os.path.basename(patch_file)
         try:
             binary_hash = (yl['binaries'][project][file_name])
+            return binary_hash
         except KeyError:
         except KeyError:
-            logger.error('Key Error processing binary hash values')
-        return binary_hash
+            binary_hash = 'null'
+            return binary_hash
+
 
     def file_audit_list(self, project):
         project_list = False
 
     def file_audit_list(self, project):
         project_list = False
@@ -96,11 +100,9 @@ class GetLists(object):
             logger.error('Key Error processing file_names list values')
         try:
             project_list = set((yl['file_audits'][project]['file_names']))
             logger.error('Key Error processing file_names list values')
         try:
             project_list = set((yl['file_audits'][project]['file_names']))
-            logger.info('file_names waivers found for {0}'.
-                        format(project))
+            logger.info('file_names waivers found for %s', project)
         except KeyError:
         except KeyError:
-            logger.info('No file_names waivers found for {0}'.
-                        format(project))
+            logger.info('No file_names waivers found for %s', project)
 
         file_names_re = re.compile("|".join(default_list),
                                    flags=re.IGNORECASE)
 
         file_names_re = re.compile("|".join(default_list),
                                    flags=re.IGNORECASE)
@@ -117,25 +119,26 @@ class GetLists(object):
         project_list = False
         self.load_project_exception_file(yl.get('project_exceptions'), project)
         try:
         project_list = False
         self.load_project_exception_file(yl.get('project_exceptions'), project)
         try:
-            default_list = set((yl['file_audits']['file_contents']))
+            master_list = (yl['file_audits']['file_contents'])
+
         except KeyError:
             logger.error('Key Error processing file_contents list values')
         except KeyError:
             logger.error('Key Error processing file_contents list values')
+
         try:
             project_list = set((yl['file_audits'][project]['file_contents']))
         try:
             project_list = set((yl['file_audits'][project]['file_contents']))
+            project_list_re = re.compile("|".join(project_list),
+                                               flags=re.IGNORECASE)
         except KeyError:
         except KeyError:
-            logger.info('No file_contents waivers found  for {0}'.
-                        format(project))
+            logger.info('No file_contents waivers found  for %s', project)
 
 
-        file_contents_re = re.compile("|".join(default_list),
-                                      flags=re.IGNORECASE)
+        return master_list, project_list_re
 
 
-        if project_list:
-            file_contents_proj_re = re.compile("|".join(project_list),
-                                               flags=re.IGNORECASE)
-            return file_contents_re, file_contents_proj_re
-        else:
-            file_contents_proj_re = re.compile("")
-            return file_contents_re, file_contents_proj_re
+    def file_ignore(self):
+        try:
+            file_ignore = (yl['file_ignore'])
+        except KeyError:
+            logger.error('Key Error processing file_ignore list values')
+        return file_ignore
 
     def licence_extensions(self):
         try:
 
     def licence_extensions(self):
         try: