summaryrefslogtreecommitdiffstats
path: root/pym/elog_modules/mod_custom.py
diff options
context:
space:
mode:
authorMarius Mauch <genone@gentoo.org>2005-11-13 15:01:01 +0000
committerMarius Mauch <genone@gentoo.org>2005-11-13 15:01:01 +0000
commite4468d9f252541e9587e70498c6876d563cca7f6 (patch)
tree7bb0cd07d9867ed3927d62243da1facae173bc16 /pym/elog_modules/mod_custom.py
parent6c3c1b0cf62e59eaad40d425fee97f33ff3b639a (diff)
downloadportage-e4468d9f252541e9587e70498c6876d563cca7f6.tar.gz
portage-e4468d9f252541e9587e70498c6876d563cca7f6.tar.bz2
portage-e4468d9f252541e9587e70498c6876d563cca7f6.zip
First bunch of simple logging modules.
svn path=/main/trunk/; revision=2307
Diffstat (limited to 'pym/elog_modules/mod_custom.py')
-rw-r--r--pym/elog_modules/mod_custom.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/pym/elog_modules/mod_custom.py b/pym/elog_modules/mod_custom.py
new file mode 100644
index 000000000..eebbdd55b
--- /dev/null
+++ b/pym/elog_modules/mod_custom.py
@@ -0,0 +1,16 @@
+import elog_modules.mod_save, portage_exec, portage_exception
+
+def process(mysettings, cpv, logentries, fulltext):
+ elog_modules.mod_save.process(mysettings, cpv, logentries, fulltext)
+
+ if (not "PORTAGE_ELOG_COMMAND" in mysettings.keys()) \
+ or len(mysettings["PORTAGE_ELOG_COMMAND"]) == 0:
+ raise portage_exception.MissingParameter("!!! Custom logging requested but PORTAGE_ELOG_COMMAND is not defined")
+ else:
+ mylogcmd = mysettings["PORTAGE_ELOG_COMMAND"]
+ mylogcmd.replace("${LOGFILE}", elogfilename)
+ mylogcmd.replace("${PACKAGE}", cpv)
+ retval = portage_exec.spawn_bash(mylogcmd)
+ if retval != 0:
+ raise portage_exception.PortageException("!!! PORTAGE_ELOG_COMMAND failed with exitcode %d" % retval)
+ return