diff --git a/exon/exon-core/Cargo.toml b/exon/exon-core/Cargo.toml index a5007bcb..03a938c8 100644 --- a/exon/exon-core/Cargo.toml +++ b/exon/exon-core/Cargo.toml @@ -51,7 +51,7 @@ noodles = { workspace = true, features = [ "gtf", ] } num_cpus = "1.16.0" -object_store = { workspace = true, features = ["aws"] } +object_store = { workspace = true, features = ["aws", "gcp"] } pin-project = { version = "1.1.5", optional = true } tokio = { workspace = true, features = ["rt-multi-thread"] } tokio-util = { workspace = true } diff --git a/exon/exon-core/src/runtime_env/exon_runtime_env_ext.rs b/exon/exon-core/src/runtime_env/exon_runtime_env_ext.rs index 15ca145b..d4caf35d 100644 --- a/exon/exon-core/src/runtime_env/exon_runtime_env_ext.rs +++ b/exon/exon-core/src/runtime_env/exon_runtime_env_ext.rs @@ -16,6 +16,7 @@ use std::sync::Arc; use async_trait::async_trait; use datafusion::{error::DataFusionError, execution::runtime_env::RuntimeEnv}; +use object_store::gcp::GoogleCloudStorageBuilder; use object_store::ObjectStore; use exon_io::build_s3_object_store; @@ -70,8 +71,6 @@ impl ExonRuntimeEnvExt for Arc { match url.scheme() { "s3" => self.register_s3_object_store(url).await, "gs" => { - use object_store::gcp::GoogleCloudStorageBuilder; - // Check that the GOOGLE_SERVICE_ACCOUNT env var is set if std::env::var("GOOGLE_SERVICE_ACCOUNT").is_err() { return Err(DataFusionError::Execution(