summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Beyer <matthias.beyer@atos.net>2021-04-21 15:54:48 +0200
committerMatthias Beyer <matthias.beyer@atos.net>2021-04-21 15:54:48 +0200
commit5390536f0a4d5e724134cb3b950390bc82025fb7 (patch)
treec7c71a0ccb68ce23950e50cdbf876c19160d24c5
parent38b6ded40c6d840c9d3951f0a082cd55b1b0109c (diff)
Outsource helper to check whether job was successful
Signed-off-by: Matthias Beyer <matthias.beyer@atos.net>
-rw-r--r--src/commands/db.rs10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/commands/db.rs b/src/commands/db.rs
index ba66c14..8c05dc0 100644
--- a/src/commands/db.rs
+++ b/src/commands/db.rs
@@ -355,8 +355,7 @@ fn jobs(conn_cfg: DbConnectionConfig, matches: &ArgMatches) -> Result<()> {
.into_iter()
.rev() // required for the --limit implementation
.map(|(job, submit, ep, package)| {
- let success = crate::log::ParsedLog::build_from(&job.log_text)?
- .is_successfull()
+ let success = is_job_successful(&job)?
.map(|b| if b { "yes" } else { "no" })
.map(String::from)
.unwrap_or_else(|| String::from("unknown"));
@@ -602,3 +601,10 @@ fn releases(conn_cfg: DbConnectionConfig, config: &Configuration, matches: &ArgM
crate::commands::util::display_data(header, data, csv)
}
+/// Check if a job is successful
+///
+/// Returns Ok(None) if cannot be decided
+fn is_job_successful(job: &models::Job) -> Result<Option<bool>> {
+ crate::log::ParsedLog::build_from(&job.log_text).map(|pl| pl.is_successfull())
+}
+