summaryrefslogtreecommitdiffstats
path: root/src/db
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2020-11-16 14:56:35 +0100
committerMatthias Beyer <mail@beyermatthias.de>2020-11-16 14:56:35 +0100
commitfad93aa5464fd084e91b72fc3d2b00d85f984edd (patch)
tree999b35ea05ef1aa3b8da1b3ba340e581d359dccc /src/db
parentb4b617a42b2c160b577272c1c16b330a6d45c921 (diff)
Return Job object when created in database
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
Diffstat (limited to 'src/db')
-rw-r--r--src/db/models/job.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/db/models/job.rs b/src/db/models/job.rs
index 12fba7b..8240bd8 100644
--- a/src/db/models/job.rs
+++ b/src/db/models/job.rs
@@ -45,7 +45,7 @@ impl Job {
container: &ContainerHash,
script: &Script,
log: &str,
- ) -> Result<()> {
+ ) -> Result<Job> {
let new_job = NewJob {
uuid: job_uuid,
submit_id: submit.id,
@@ -61,9 +61,12 @@ impl Job {
diesel::insert_into(jobs::table)
.values(&new_job)
.on_conflict_do_nothing()
- .execute(database_connection)
+ .execute(database_connection)?;
+
+ dsl::jobs
+ .filter(uuid.eq(job_uuid))
+ .first::<Job>(database_connection)
.map_err(Error::from)
- .map(|_| ())
}
}