From 799a0c42e6844d67dc24fdda50e6ccdf87e519a1 Mon Sep 17 00:00:00 2001 From: Cole Mickens Date: Tue, 5 Nov 2024 13:55:24 -0800 Subject: [PATCH 1/6] shutdown: wait for flakehub_cache first --- magic-nix-cache/src/api.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/magic-nix-cache/src/api.rs b/magic-nix-cache/src/api.rs index 104d7f1..35ae65e 100644 --- a/magic-nix-cache/src/api.rs +++ b/magic-nix-cache/src/api.rs @@ -99,17 +99,17 @@ async fn workflow_finish( gha_cache.shutdown().await?; } + if let Some(attic_state) = state.flakehub_state.write().await.take() { + tracing::info!("Waiting for FlakeHub cache uploads to finish"); + let _paths = attic_state.push_session.wait().await?; + } + if let Some(sender) = state.shutdown_sender.lock().await.take() { sender .send(()) .map_err(|_| Error::Internal("Sending shutdown server message".to_owned()))?; } - if let Some(attic_state) = state.flakehub_state.write().await.take() { - tracing::info!("Waiting for FlakeHub cache uploads to finish"); - let _paths = attic_state.push_session.wait().await?; - } - // NOTE(cole-h): see `init_logging` if let Some(logfile) = &state.logfile { let logfile_contents = std::fs::read_to_string(logfile) From 9f7a4abc4d424ff6502a76d477994cfdbb6d1d84 Mon Sep 17 00:00:00 2001 From: Cole Mickens Date: Tue, 5 Nov 2024 14:24:41 -0800 Subject: [PATCH 2/6] shutdown: info! if we don't have flakehub_state at workflow_finish --- magic-nix-cache/src/api.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/magic-nix-cache/src/api.rs b/magic-nix-cache/src/api.rs index 35ae65e..78afc9c 100644 --- a/magic-nix-cache/src/api.rs +++ b/magic-nix-cache/src/api.rs @@ -102,6 +102,8 @@ async fn workflow_finish( if let Some(attic_state) = state.flakehub_state.write().await.take() { tracing::info!("Waiting for FlakeHub cache uploads to finish"); let _paths = attic_state.push_session.wait().await?; + } else { + tracing::info!("NOT Waiting for FlakeHub cache uploads to finish"); } if let Some(sender) = state.shutdown_sender.lock().await.take() { From a54a97ff9bd8bbc475cdadcb2fc596886d225abe Mon Sep 17 00:00:00 2001 From: Cole Mickens Date: Tue, 5 Nov 2024 14:38:20 -0800 Subject: [PATCH 3/6] shutdown: info! print paths after FHC upload --- magic-nix-cache/src/api.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/magic-nix-cache/src/api.rs b/magic-nix-cache/src/api.rs index 78afc9c..5598af4 100644 --- a/magic-nix-cache/src/api.rs +++ b/magic-nix-cache/src/api.rs @@ -101,7 +101,16 @@ async fn workflow_finish( if let Some(attic_state) = state.flakehub_state.write().await.take() { tracing::info!("Waiting for FlakeHub cache uploads to finish"); - let _paths = attic_state.push_session.wait().await?; + let paths = attic_state.push_session.wait().await?; + + tracing::info!( + "Uploaded to FlakeHub Cache: {}", + paths + .keys() + .map(|s| s.name()) + .collect::>() + .join(", ") + ); } else { tracing::info!("NOT Waiting for FlakeHub cache uploads to finish"); } From 7841b8bbe2d626547d049f7502c1d6eaaa5f7e92 Mon Sep 17 00:00:00 2001 From: Cole Mickens Date: Tue, 5 Nov 2024 14:48:00 -0800 Subject: [PATCH 4/6] flakehub cache init failure is an error --- magic-nix-cache/src/main.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/magic-nix-cache/src/main.rs b/magic-nix-cache/src/main.rs index c2bd79d..3b06ed5 100644 --- a/magic-nix-cache/src/main.rs +++ b/magic-nix-cache/src/main.rs @@ -354,7 +354,7 @@ async fn main_cli() -> Result<()> { Some(state) } Err(err) => { - tracing::debug!("FlakeHub cache initialization failed: {}", err); + tracing::error!("FlakeHub cache initialization failed: {}", err); None } } From 625d7717b6e45593515c1160cd553dd66ce45826 Mon Sep 17 00:00:00 2001 From: Cole Mickens Date: Tue, 5 Nov 2024 15:02:31 -0800 Subject: [PATCH 5/6] flakehub logging review comments --- magic-nix-cache/src/api.rs | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/magic-nix-cache/src/api.rs b/magic-nix-cache/src/api.rs index 5598af4..71cdf66 100644 --- a/magic-nix-cache/src/api.rs +++ b/magic-nix-cache/src/api.rs @@ -103,16 +103,11 @@ async fn workflow_finish( tracing::info!("Waiting for FlakeHub cache uploads to finish"); let paths = attic_state.push_session.wait().await?; - tracing::info!( - "Uploaded to FlakeHub Cache: {}", - paths - .keys() - .map(|s| s.name()) - .collect::>() - .join(", ") - ); + let paths = paths.keys().map(|s| s.name()).collect::>(); + + tracing::info!(?paths, "FlakeHub Cache uploads completed.",); } else { - tracing::info!("NOT Waiting for FlakeHub cache uploads to finish"); + tracing::info!("FlakeHub cache is not enabled, not uploading anything to it"); } if let Some(sender) = state.shutdown_sender.lock().await.take() { From 647b207575f3c8ead4db71d4cdbb8131f6fca031 Mon Sep 17 00:00:00 2001 From: Graham Christensen Date: Tue, 5 Nov 2024 19:33:11 -0500 Subject: [PATCH 6/6] Update magic-nix-cache/src/api.rs --- magic-nix-cache/src/api.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/magic-nix-cache/src/api.rs b/magic-nix-cache/src/api.rs index 71cdf66..1fa145e 100644 --- a/magic-nix-cache/src/api.rs +++ b/magic-nix-cache/src/api.rs @@ -105,7 +105,7 @@ async fn workflow_finish( let paths = paths.keys().map(|s| s.name()).collect::>(); - tracing::info!(?paths, "FlakeHub Cache uploads completed.",); + tracing::info!(?paths, "FlakeHub Cache uploads completed"); } else { tracing::info!("FlakeHub cache is not enabled, not uploading anything to it"); }