Module: check_mk
Branch: master
Commit: 8a0ad9a4312439da6ace6ef11e712d8aaf682d5d
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=8a0ad9a4312439…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Wed Jan 13 10:18:08 2016 +0100
CSV import: Cleanup old files from upload tmp dir
---
web/htdocs/wato.py | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/web/htdocs/wato.py b/web/htdocs/wato.py
index 90c2b98..65269ef 100644
--- a/web/htdocs/wato.py
+++ b/web/htdocs/wato.py
@@ -3001,11 +3001,12 @@ class ModeBulkImport(WatoMode):
# Upload the CSV file into a temporary directoy to make it available not only
# for this request. It needs to be available during several potential
"confirm"
# steps and then through the upload step.
- # FIXME: How and when to cleanup files which were not completely uploaded?
def _upload_csv_file(self):
if not os.path.exists(self._upload_tmp_path):
make_nagios_directories(self._upload_tmp_path)
+ self._cleanup_old_files()
+
upload_info = self._vs_upload().from_html_vars("_upload")
self._vs_upload().validate_value(upload_info, "_upload")
file_name, mime_type, content = upload_info["file"]
@@ -3022,6 +3023,14 @@ class ModeBulkImport(WatoMode):
html.set_var("do_service_detection", "1")
+ def _cleanup_old_files(self):
+ for f in os.listdir(self._upload_tmp_path):
+ path = self._upload_tmp_path + "/" + f
+ mtime = os.stat(path).st_mtime
+ if mtime < time.time() - 3600:
+ os.unlink(path)
+
+
def _read_csv_file(self):
try:
csv_file = file(self._file_path())