diff options
Diffstat (limited to 'pym/portage/elog/mod_save.py')
-rw-r--r-- | pym/portage/elog/mod_save.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/pym/portage/elog/mod_save.py b/pym/portage/elog/mod_save.py new file mode 100644 index 000000000..2993b45db --- /dev/null +++ b/pym/portage/elog/mod_save.py @@ -0,0 +1,21 @@ +import os, time +from portage.data import portage_uid, portage_gid + +def process(mysettings, cpv, logentries, fulltext): + cpv_path = cpv.replace("/", ":") + + if mysettings["PORT_LOGDIR"] != "": + elogdir = os.path.join(mysettings["PORT_LOGDIR"], "elog") + else: + elogdir = os.path.join(os.sep, "var", "log", "portage", "elog") + if not os.path.exists(elogdir): + os.makedirs(elogdir) + os.chown(elogdir, portage_uid, portage_gid) + os.chmod(elogdir, 02770) + + elogfilename = elogdir+"/"+cpv_path+":"+time.strftime("%Y%m%d-%H%M%S", time.gmtime(time.time()))+".log" + elogfile = open(elogfilename, "w") + elogfile.write(fulltext) + elogfile.close() + + return elogfilename |