diff --git a/crates/cli/src/binaries/mod.rs b/crates/cli/src/binaries/mod.rs index f5552bd1..e634e46c 100644 --- a/crates/cli/src/binaries/mod.rs +++ b/crates/cli/src/binaries/mod.rs @@ -48,20 +48,6 @@ pub fn global_cache_dir() -> PathBuf { .join(PRISMA_CLI_VERSION) } -pub fn fetch_native(to_dir: &PathBuf) -> Result<(), String> { - if !to_dir.is_absolute() { - Err("to_dir must be absolute".to_string())?; - } - - download_cli(to_dir)?; - - for e in &ENGINES { - download_engine(&e.name, &to_dir)?; - } - - Ok(()) -} - pub fn download_cli(to_dir: &PathBuf) -> Result<(), String> { let cli = prisma_cli_name(); @@ -92,7 +78,7 @@ pub fn download_cli(to_dir: &PathBuf) -> Result<(), String> { Ok(()) } -fn download_engine(engine_name: &str, to_dir: &PathBuf) -> Result<(), String> { +pub fn download_engine(engine_name: &str, to_dir: &PathBuf) -> Result<(), String> { let os_name = platform::binary_platform_name(); let to = platform::check_for_extension( diff --git a/crates/cli/src/prisma_cli.rs b/crates/cli/src/prisma_cli.rs index b6715bae..bd412009 100644 --- a/crates/cli/src/prisma_cli.rs +++ b/crates/cli/src/prisma_cli.rs @@ -5,14 +5,13 @@ use std::process::Command; pub fn main(args: &Vec) { let dir = binaries::global_cache_dir(); - binaries::fetch_native(&dir).unwrap(); - + binaries::download_cli(&dir).unwrap(); let prisma = binaries::prisma_cli_name(); - - let mut cmd = Command::new(dir.join(prisma)); let binary_name = platform::check_for_extension(&platform::name(), &platform::binary_platform_name()); + let mut cmd = Command::new(dir.join(prisma)); + cmd.args(args); cmd.envs(env::vars()); @@ -25,6 +24,7 @@ pub fn main(args: &Vec) { cmd.env(e.env, path); } Err(_) => { + binaries::download_engine(&e.name, &dir).unwrap(); let path = dir .join(binaries::ENGINE_VERSION) .join(format!("prisma-{}-{}", e.name, binary_name)); diff --git a/integration-tests/tests/lib.rs b/integration-tests/tests/lib.rs index 0040ea9e..31b49cbf 100644 --- a/integration-tests/tests/lib.rs +++ b/integration-tests/tests/lib.rs @@ -8,7 +8,7 @@ mod utils; #[tokio::test] async fn aaaa_run_migrations() -> TestResult { - let client = db::new_client().await.unwrap(); + let client = db::PrismaClient::_builder().build().await.unwrap(); client._db_push().accept_data_loss().await.unwrap();