From ad26693e9db220162cf446a99b7ec7a92ae94779 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Wed, 2 Jun 2021 22:00:56 +0000 Subject: feat(cli): clean command --- .gitignore | 2 +- src/cli.rs | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 46106fa..0a633cf 100644 --- a/.gitignore +++ b/.gitignore @@ -15,4 +15,4 @@ Cargo.lock # Development /src/_*.* -/nitrous/ +/.nitrous/ diff --git a/src/cli.rs b/src/cli.rs index 1dd4631..c89d6f2 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -81,6 +81,19 @@ impl Cli { .unwrap_or("null"), ) .await, + ("clean", _) => { + for dir in vec![".nitrous/check/", ".nitrous/"] { + let file_type = if dir.ends_with('/') { + "directory" + } else { + "file" + }; + info!("cleaning {}: {}", file_type, dir); + if let Err(e) = std::fs::remove_dir_all(dir) { + warn!("cannot delete {}: {}: {}", file_type, dir, e); + } + } + }, _ => unreachable!(), } } @@ -131,6 +144,8 @@ impl Cli { .takes_value(true) .index(2), ]), + SubCommand::with_name("clean") + .about("Delete Nitrous-generated files/ directories which are NOT critical."), ]) .arg( Arg::with_name("debug") -- cgit v1.2.3