make code more generic
authorAlexander Kanevskiy <alexander.kanevskiy@intel.com>
Tue, 13 Aug 2013 10:50:12 +0000 (13:50 +0300)
committerAlexander Kanevskiy <alexander.kanevskiy@intel.com>
Tue, 13 Aug 2013 10:50:12 +0000 (13:50 +0300)
gerrithooks/common.py

index 6580bae2929544e28b774688090b6092554e5461..a5141677bf03be3d42b426cc87256260e96243d2 100644 (file)
@@ -26,11 +26,23 @@ from gerrithooks.misc import find_config, configure_logging, daemonize
 
 from pkg_resources import iter_entry_points
 
-def run_plugin_hooks(hook, params, logger):
+def run_plugin_hooks(hook, parser):
     """
     Common code for every hook. Must provide parsed params and logger
     """
 
+    # set up logger
+    logger = configure_logging(os.path.basename(sys.argv[0]))
+
+    # get parameters from command line
+    params = parser(sys.argv[1:])
+
+    params_keys = sorted([ key for key in dir(params)
+                    if not (key.startswith("_") or key =="debug") ])
+    params_string = ", ".join(["%s: %s" % (key,getattr(params,key)) for key in
+                                                            params_keys ])
+    logger.info("Event %s: %s", hook, params_string)
+
     if not 'debug' in params or not params.debug:
         logger.debug("Daemonizing...")
         daemonize()