summaryrefslogtreecommitdiffstats
path: root/src/commands/db.rs
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2020-11-13 18:29:13 +0100
committerMatthias Beyer <mail@beyermatthias.de>2020-11-13 18:33:51 +0100
commit660896cf9d2fb5d7f3827bcfc617d1a48e1ee692 (patch)
tree5c169720e8acf4d83780a4cc7d58830fe29ce888 /src/commands/db.rs
parent05553d101115164cef5252139c906b584f0517f5 (diff)
Add flag to hide log
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
Diffstat (limited to 'src/commands/db.rs')
-rw-r--r--src/commands/db.rs33
1 files changed, 19 insertions, 14 deletions
diff --git a/src/commands/db.rs b/src/commands/db.rs
index cde35c8..89724c1 100644
--- a/src/commands/db.rs
+++ b/src/commands/db.rs
@@ -266,9 +266,10 @@ fn job(conn_cfg: DbConnectionConfig, matches: &ArgMatches) -> Result<()> {
use crate::schema;
use crate::schema::jobs::dsl;
- let csv = matches.is_present("csv");
- let conn = crate::db::establish_connection(conn_cfg)?;
- let job_uuid = matches.value_of("job_uuid")
+ let hide_log = matches.is_present("hide_log");
+ let csv = matches.is_present("csv");
+ let conn = crate::db::establish_connection(conn_cfg)?;
+ let job_uuid = matches.value_of("job_uuid")
.map(uuid::Uuid::parse_str)
.transpose()?
.unwrap();
@@ -318,17 +319,21 @@ fn job(conn_cfg: DbConnectionConfig, matches: &ArgMatches) -> Result<()> {
container_hash = data.0.container_hash.cyan(),
script_len = format!("{:<4}", data.0.script_text.len()).cyan(),
log_len = format!("{:<4}", data.0.log_text.len()).cyan(),
- log_text = parsed_log.iter()
- .map(|line_item| match line_item {
- LogItem::Line(s) => Ok(String::from_utf8(s.to_vec())?.normal()),
- LogItem::Progress(u) => Ok(format!("#BUTIDO:PROGRESS:{}", u).bright_black()),
- LogItem::CurrentPhase(p) => Ok(format!("#BUTIDO:PHASE:{}", p).bright_black()),
- LogItem::State(Ok(s)) => Ok(format!("#BUTIDO:STATE:OK:{}", s).green()),
- LogItem::State(Err(s)) => Ok(format!("#BUTIDO:STATE:ERR:{}", s).red()),
- })
- .collect::<Result<Vec<_>>>()?
- .into_iter() // ugly, but hey... not important right now.
- .join("\n"),
+ log_text = if hide_log {
+ String::from("<log hidden>")
+ } else {
+ parsed_log.iter()
+ .map(|line_item| match line_item {
+ LogItem::Line(s) => Ok(String::from_utf8(s.to_vec())?.normal()),
+ LogItem::Progress(u) => Ok(format!("#BUTIDO:PROGRESS:{}", u).bright_black()),
+ LogItem::CurrentPhase(p) => Ok(format!("#BUTIDO:PHASE:{}", p).bright_black()),
+ LogItem::State(Ok(s)) => Ok(format!("#BUTIDO:STATE:OK:{}", s).green()),
+ LogItem::State(Err(s)) => Ok(format!("#BUTIDO:STATE:ERR:{}", s).red()),
+ })
+ .collect::<Result<Vec<_>>>()?
+ .into_iter() // ugly, but hey... not important right now.
+ .join("\n")
+ },
);
writeln!(&mut std::io::stdout(), "{}", s).map_err(Error::from)