From ccb6d6e05e4fff422c7fb940b31160f1b79d912a Mon Sep 17 00:00:00 2001 From: Evan Feenstra Date: Fri, 25 Aug 2023 14:25:44 -0700 Subject: [PATCH] better clear bin --- deploy.sh | 4 ++-- sphinx-key/src/clear.rs | 30 ++++++++++++++++++++++++++++-- 2 files changed, 30 insertions(+), 4 deletions(-) diff --git a/deploy.sh b/deploy.sh index 38592c6..ca62afe 100755 --- a/deploy.sh +++ b/deploy.sh @@ -1,6 +1,6 @@ # MODE=debug MODE=release -BIN=sphinx-key +BIN=clear check_exists() { command -v "$1" > /dev/null } @@ -63,7 +63,7 @@ then echo "Make sure the ESP is connected with a data USB cable, and try again." exit 1 fi -# esptool.py erase_flash && +esptool.py erase_flash && git pull && cd factory && cargo espflash flash --release --port $PORT && diff --git a/sphinx-key/src/clear.rs b/sphinx-key/src/clear.rs index 0583716..5eb6aef 100644 --- a/sphinx-key/src/clear.rs +++ b/sphinx-key/src/clear.rs @@ -44,8 +44,34 @@ fn main() -> anyhow::Result<()> { let path = entry.path(); if path.is_dir() { println!("PATH {}", path.display()); - if let Err(_e) = fs::remove_dir_all(path) { - println!("err removing dir"); + if let Err(e) = fs::remove_dir_all(path.clone()) { + println!("err removing dir {:?}", e); + // remove inner dirs too + for entry in fs::read_dir(path)? { + let entry = entry?; + let path = entry.path(); + if path.is_dir() { + println!("INNER PATH {:?}", path.display()); + if let Err(e) = fs::remove_dir_all(path) { + println!("err removing inner dir {:?}", e); + } + } + } + } + } + } + } + + let dir = Path::new(ROOT_STORE); + println!("root store is dir {}", dir.is_dir()); + if dir.is_dir() { + for entry in fs::read_dir(dir)? { + let entry = entry?; + let path = entry.path(); + if path.is_dir() { + println!("PATH {}", path.display()); + if let Err(e) = fs::remove_dir_all(path.clone()) { + println!("err removing dir {:?}", e); } } }