aboutsummaryrefslogtreecommitdiffstats
path: root/anteater/main.py
diff options
context:
space:
mode:
authorRoss Brattain <ross.b.brattain@intel.com>2017-06-21 14:57:13 -0700
committerRoss Brattain <ross.b.brattain@intel.com>2017-06-28 23:08:14 -0700
commiteceefe7114bc5d0fc94ac77ee4e510c94c1a76bf (patch)
treecf24e060a2972701c3b6788ed0ed748c8168fe0f /anteater/main.py
parentf2149d0366a2dd7add11d017679307256632d372 (diff)
add Python3 support with six
switch to relative imports for package file use absolute imports in main this requires renaming anteater.py to main.py to avoid absolute import name conflict update setup.py to indicate python 3.4 support Change-Id: I0fcaf8a9825557962dc98a6a4eef490051fbbfb0 Signed-off-by: Ross Brattain <ross.b.brattain@intel.com>
Diffstat (limited to 'anteater/main.py')
-rw-r--r--anteater/main.py65
1 files changed, 65 insertions, 0 deletions
diff --git a/anteater/main.py b/anteater/main.py
new file mode 100644
index 0000000..3a23ceb
--- /dev/null
+++ b/anteater/main.py
@@ -0,0 +1,65 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+##############################################################################
+# Copyright (c) 2017 Luke Hinds <lhinds@redhat.com>, Red Hat
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+# from __future__ import division, print_function, absolute_import
+
+"""Anteater - CI Gate Checks.
+
+Usage:
+ anteater (-p |--project) <project> [(-ps |--patchset) <patchset>]
+ anteater (-p |--project) <project> [--path <project_path>]
+ anteater (-h | --help)
+ anteater --version
+
+Options:
+ -h --help Show this screen.
+ --version Show version.
+"""
+from __future__ import absolute_import
+
+import six.moves.configparser
+from docopt import docopt
+import os
+from anteater.src.patch_scan import prepare_patchset
+from anteater.src.project_scan import prepare_project
+from anteater.utils import anteater_logger as antlog
+
+
+config = six.moves.configparser.RawConfigParser()
+config.read('anteater.conf')
+reports_dir = config.get('config', 'reports_dir')
+logger = antlog.Logger(__name__).getLogger()
+__version__ = "0.1"
+
+
+def check_dir():
+ """ Creates a directory for scan reports """
+ try:
+ os.makedirs(reports_dir)
+ logger.info('Creating reports directory: {0}'.format(reports_dir))
+ except OSError as e:
+ if not os.path.isdir(reports_dir):
+ logger.error(e)
+
+
+def main():
+ """ Main function, mostly for passing arguments """
+ check_dir()
+ arguments = docopt(__doc__, version=__version__)
+
+ if arguments['<patchset>']:
+ prepare_patchset(arguments['<project>'], arguments['<patchset>'])
+ elif arguments['<project_path>']:
+ prepare_project(arguments['<project>'], arguments['<project_path>'])
+
+
+if __name__ == "__main__":
+ main()