From 736bd0c01924ca361e46a5c0903b12bae47dc2e5 Mon Sep 17 00:00:00 2001 From: Luc Perkins Date: Fri, 17 May 2024 14:22:01 -0300 Subject: [PATCH] Delete notification file if server fails to start up --- magic-nix-cache/src/main.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/magic-nix-cache/src/main.rs b/magic-nix-cache/src/main.rs index fb97e3c..a63d7bf 100644 --- a/magic-nix-cache/src/main.rs +++ b/magic-nix-cache/src/main.rs @@ -382,6 +382,16 @@ async fn main_cli() -> Result<()> { tokio::spawn(async move { if let Err(e) = server.await { tracing::error!("failed to start up daemon: {e}"); + + // Delete the notification file if it was created + if let Some(startup_notification_file_path) = args.startup_notification_file_path { + if File::metadata(startup_notification_file_path).await.is_ok() { + if let Err(e) = tokio::fs::remove_file(startup_notification_file_path).await { + tracing::error!("failed to remove stray startup notification file at {startup_notification_file_path:?}; you may need to delete it manually"); + } + } + } + exit(1); } });