@echo -n "LLOC: "; grep -vE '(^ *#|^ *$$)' irkerd irkerhook.py | wc -l
SOURCES = README COPYING NEWS install.txt security.txt hacking.txt \
- irkerd irkerhook.py filter-example.py Makefile irkerd.xml irkerhook.xml
+ irkerd irkerhook.py filter-example.py filter-test.py \
+ Makefile irkerd.xml irkerhook.xml
EXTRA_DIST = irker-logo.png org.catb.irkerd.plist
version:
--- /dev/null
+#!/usr/bin/env python
+#
+# Test hook to launch an irker instance (if it doesn't already exist)
+# just before shipping the notification. We start it in in another terminal
+# so you can watch the debug messages. Probably only of interest only to
+# developers
+#
+# To use it, set up irkerhook.py to file on each commit.
+# Then set the filtercmd variable in your repo config as follows:
+#
+# [irker]
+# filtercmd = filter-test.py
+#
+# This is rather antisocial - imagine thousands of irkerds holding open
+# connections to IRCDs. It's better to go through an instance running
+# at your forge or set up for shared use by your intranet administrator.
+
+import os, sys, json, subprocess, time
+metadata = json.loads(sys.argv[1])
+
+ps = subprocess.Popen("ps -U %s uh" % os.getenv("LOGNAME"),
+ shell=True,
+ stdout=subprocess.PIPE)
+data = ps.stdout.read()
+irkerd_count = len([x for x in data.split("\n") if x.find("irkerd") != -1])
+
+if not irkerd_count:
+ os.system("gnome-terminal --title 'irkerd' -e 'irkerd -d 2' &")
+
+time.sleep(0.1) # Avoid a race condition
+
+print json.dumps(metadata)
+# end