superseeded_by = lazy_property(get_superseeded_by, set_superseeded_by)
def delete(self):
- self.__delete_buildroots()
- self.__delete_history()
- self.__delete_packages()
- self.__delete_logfiles()
+ self._set_attribute("delete", True)
+
+ def remove(self):
+ """
+ Removes a job from the database
+ """
+ self.__remove_buildroots()
+ self.__remove_history()
+ self.__remove_packages()
+ self.__remove_logfiles()
# Delete the job itself.
self.db.execute("DELETE FROM jobs WHERE id = %s", self.id)
- def __delete_buildroots(self):
+ def __remove_buildroots(self):
"""
Removes all buildroots.
"""
self.db.execute("DELETE FROM jobs_buildroots WHERE job_id = %s", self.id)
- def __delete_history(self):
+ def __remove_history(self):
"""
Removes all references in the history to this build job.
"""
self.db.execute("DELETE FROM jobs_history WHERE job_id = %s", self.id)
- def __delete_packages(self):
+ def __remove_packages(self):
"""
Deletes all uploaded files from the job.
"""
self.db.execute("DELETE FROM jobs_packages WHERE job_id = %s", self.id)
- def __delete_logfiles(self):
+ def __remove_logfiles(self):
for logfile in self.logfiles:
self.db.execute("INSERT INTO queue_delete(path) VALUES(%s)", logfile.path)
def reset(self, user=None):
- self.__delete_buildroots()
- self.__delete_packages()
- self.__delete_history()
- self.__delete_logfiles()
+ self.__remove_buildroots()
+ self.__remove_packages()
+ self.__remove_history()
+ self.__remove_logfiles()
self.state = "new"
self.log("reset", user=user)
message text,
test boolean DEFAULT true NOT NULL,
superseeded_by integer,
- deleted boolean DEFAULT false NOT NULL
+ deleted_at timestamp without time zone
);
jobs.arch,
(jobs.time_finished - jobs.time_started) AS duration
FROM jobs
- WHERE (((jobs.deleted IS FALSE) AND (jobs.test IS FALSE)) AND (jobs.state = 'finished'::jobs_state));
+ WHERE (((jobs.deleted_at IS NULL) AND (jobs.test IS FALSE)) AND (jobs.state = 'finished'::jobs_state));
ALTER TABLE builds_times OWNER TO pakfire;
--
--- Name: jobs_type; Type: INDEX; Schema: public; Owner: pakfire; Tablespace:
+-- Name: jobs_test; Type: INDEX; Schema: public; Owner: pakfire; Tablespace:
--
-CREATE INDEX jobs_type ON jobs USING btree (test) WHERE (deleted IS FALSE);
+CREATE INDEX jobs_test ON jobs USING btree (test) WHERE (deleted_at IS NULL);
--