dev 21 support cli update link

This commit is contained in:
mbecker20
2025-08-07 02:48:21 -04:00
parent 1a5779ca14
commit 3dad87e18f
3 changed files with 30 additions and 26 deletions

32
Cargo.lock generated
View File

@@ -904,7 +904,7 @@ dependencies = [
[[package]]
name = "cache"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"tokio",
@@ -1060,7 +1060,7 @@ dependencies = [
[[package]]
name = "command"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"komodo_client",
"run_command",
@@ -1069,7 +1069,7 @@ dependencies = [
[[package]]
name = "config"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"colored",
"serde",
@@ -1284,7 +1284,7 @@ checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476"
[[package]]
name = "database"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"async-compression",
@@ -1582,7 +1582,7 @@ dependencies = [
[[package]]
name = "environment"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"formatting",
@@ -1592,7 +1592,7 @@ dependencies = [
[[package]]
name = "environment_file"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"thiserror 2.0.12",
]
@@ -1682,7 +1682,7 @@ dependencies = [
[[package]]
name = "formatting"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"serror",
]
@@ -1844,7 +1844,7 @@ checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f"
[[package]]
name = "git"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"cache",
@@ -2450,7 +2450,7 @@ dependencies = [
[[package]]
name = "interpolate"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"komodo_client",
@@ -2581,7 +2581,7 @@ dependencies = [
[[package]]
name = "komodo_cli"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"clap",
@@ -2603,7 +2603,7 @@ dependencies = [
[[package]]
name = "komodo_client"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"async_timing_util",
@@ -2636,7 +2636,7 @@ dependencies = [
[[package]]
name = "komodo_core"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"arc-swap",
@@ -2705,7 +2705,7 @@ dependencies = [
[[package]]
name = "komodo_periphery"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"arc-swap",
@@ -2825,7 +2825,7 @@ dependencies = [
[[package]]
name = "logger"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"komodo_client",
@@ -3567,7 +3567,7 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
[[package]]
name = "periphery_client"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"komodo_client",
@@ -4098,7 +4098,7 @@ dependencies = [
[[package]]
name = "response"
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
dependencies = [
"anyhow",
"axum",

View File

@@ -8,7 +8,7 @@ members = [
]
[workspace.package]
version = "1.18.5-dev-20"
version = "1.18.5-dev-21"
edition = "2024"
authors = ["mbecker20 <becker.maxh@gmail.com>"]
license = "GPL-3.0-or-later"

View File

@@ -478,7 +478,7 @@ pub async fn handle(
match res {
Ok(ExecutionResult::Single(update)) => {
poll_update_until_complete(&update.id).await
poll_update_until_complete(&update).await
}
Ok(ExecutionResult::Batch(updates)) => {
let mut handles = updates
@@ -486,7 +486,7 @@ pub async fn handle(
.map(|update| async move {
match update {
BatchExecutionResponseItem::Ok(update) => {
poll_update_until_complete(&update.id).await
poll_update_until_complete(&update).await
}
BatchExecutionResponseItem::Err(e) => {
error!("{e:#?}");
@@ -513,11 +513,20 @@ pub async fn handle(
}
async fn poll_update_until_complete(
update_id: &str,
update: &Update,
) -> anyhow::Result<()> {
let link = if update.id.is_empty() {
let (resource_type, id) = update.target.extract_variant_id();
resource_link(&cli_config().host, resource_type, id)
} else {
format!("{}/updates/{}", cli_config().host, update.id)
};
info!("Link: '{}'", link.bold());
let client = super::komodo_client().await?;
let timer = tokio::time::Instant::now();
let update = client.poll_update_until_complete(update_id).await?;
let update = client.poll_update_until_complete(&update.id).await?;
if update.success {
info!(
"FINISHED in {}: {}",
@@ -531,10 +540,5 @@ async fn poll_update_until_complete(
"EXECUTION FAILED".red(),
);
}
let (resource_type, id) = update.target.extract_variant_id();
println!(
"\nSee '{}' for details.",
resource_link(&cli_config().host, resource_type, id).bold()
);
Ok(())
}