kittynode_core/application/
install_package.rs

1use crate::infra::{file::generate_jwt_secret, package, package_config::PackageConfigStore};
2use eyre::{Context, Result};
3use tracing::info;
4
5pub async fn install_package(name: &str) -> Result<()> {
6    generate_jwt_secret().wrap_err("Failed to generate JWT secret")?;
7
8    let package = package::get_package_by_name(name)?;
9
10    let config = PackageConfigStore::load(name)?;
11    let network = config.values.get("network");
12
13    package::install_package(&package, network.map(String::as_str)).await?;
14    info!("Package '{}' installed successfully.", name);
15    Ok(())
16}