From: Michael Tremer Date: Mon, 17 Oct 2022 17:05:17 +0000 (+0000) Subject: jobs: Delete the log file on delete X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0f1a8427a2f7917ba676d91aad17e007da1fc03d;p=pbs.git jobs: Delete the log file on delete Signed-off-by: Michael Tremer --- diff --git a/src/buildservice/jobs.py b/src/buildservice/jobs.py index be3d190d..c6193850 100644 --- a/src/buildservice/jobs.py +++ b/src/buildservice/jobs.py @@ -312,7 +312,8 @@ class Job(base.DataObject): if user: self._set_attribute("deleted_by", user) - # XXX DELETE THE LOGFILE + # Delete the logfile + await self._delete_logfile() def clone(self): """ @@ -377,6 +378,22 @@ class Job(base.DataObject): self._set_attribute("log_size", upload.size) self._set_attribute("log_digest_blake2s", digest) + async def _delete_log(self): + """ + Called to delete the log file + """ + # Nothing to do if there is no log file + if not self.has_log(): + return + + # Delete the file from disk + await self.backend.unlink(self.log_path) + + # Reset all database attributes + self._set_attribute("log_path", None) + self._set_attribute("log_size", None) + self._set_attribute("log_digest_blake2s", None) + # Builder @lazy_property