# http://www.eclipse.org/legal/epl-v10.html
 ##############################################################################
 """Contains functions for various Nexus tasks."""
+
+import logging
 import sys
 
 import yaml
 
 from lftools.nexus import Nexus
 
+log = logging.getLogger(__name__)
+
 
 def reorder_staged_repos(settings_file):
     """Reorder staging repositories in Nexus.
         for priv in privs_set:
             try:
                 privs[priv] = _nexus.get_priv(name, priv)
+                log.info('Creating {} privileges.'.format(priv))
             except LookupError as e:
                 privs[priv] = _nexus.create_priv(name, target_id, priv)
 
         # Create Role
         try:
             role_id = _nexus.get_role(name)
+            log.info('Creating {} role.'.format(role_id))
         except LookupError as e:
             role_id = _nexus.create_role(name, privs)
 
         # Create user
         try:
             _nexus.get_user(name)
+            log.info('Creating {} user.'.format(name))
         except LookupError as e:
             _nexus.create_user(name, email, role_id, password, extra_privs)
 
     def build_repo(repo, repoId, config, base_groupId):
-        print('Building for %s.%s' % (base_groupId, repo))
+        log.info('-> Building for {}.{} in Nexus'.format(base_groupId, repo))
         groupId = '%s.%s' % (base_groupId, repo)
         target1 = '^/%s/.*' % groupId.replace('.', '[/\.]')
         target2 = '^/%s[\.].*' % groupId.replace('.', '[/\.]')
 
         if 'extra_privs' in config:
             extra_privs = config['extra_privs']
+            log.info('Privileges for this repo:' + ', '.join(extra_privs))
         else:
             extra_privs = []
 
             config['password'],
             extra_privs)
 
+        log.info('-> Finished successfully for {}.{}!!\n'.format(base_groupId, repo))
+
         if 'repositories' in config:
             for sub_repo in config['repositories']:
                 sub_repo_id = '%s-%s' % (repoId, sub_repo)
                     config['repositories'][sub_repo],
                     groupId)
 
+    log.warning('Nexus repo creation started. Aborting now could leave tasks undone!')
     for repo in config['repositories']:
         build_repo(repo, repo, config['repositories'][repo], config['base_groupId'])