Skip to content

Commit

Permalink
Fix datasource URL override for c-abi engine (#4863)
Browse files Browse the repository at this point in the history
  • Loading branch information
SevInf committed May 10, 2024
1 parent e162a52 commit a8ad08f
Showing 1 changed file with 12 additions and 14 deletions.
26 changes: 12 additions & 14 deletions query-engine/query-engine-c-abi/src/engine.rs
Expand Up @@ -133,16 +133,23 @@ impl QueryEngine {

let datamodel = get_cstr_safe(constructor_options.datamodel).expect("Datamodel must be present");
let mut schema = psl::validate(datamodel.into());

let config = &mut schema.configuration;
config
.resolve_datasource_urls_query_engine(
&overrides,
|key| env.get(key).map(ToString::to_string),
// constructor_options.ignore_env_var_errors,
true,
)
.map_err(|err| ApiError::conversion(err, schema.db.source_assert_single()))?;
// extract the url for later use in apply_migrations
let url = schema
.configuration
let url = config
.datasources
.first()
.unwrap()
.load_url(|key| env::var(key).ok())
.unwrap();

let config = &mut schema.configuration;
.map_err(|err| ApiError::conversion(err, schema.db.source_assert_single()))?;

schema
.diagnostics
Expand All @@ -155,15 +162,6 @@ impl QueryEngine {
_ => tracing::trace!("No base path provided"),
}

config
.resolve_datasource_urls_query_engine(
&overrides,
|key| env.get(key).map(ToString::to_string),
// constructor_options.ignore_env_var_errors,
true,
)
.map_err(|err| ApiError::conversion(err, schema.db.source_assert_single()))?;

config
.validate_that_one_datasource_is_provided()
.map_err(|errors| ApiError::conversion(errors, schema.db.source_assert_single()))?;
Expand Down

0 comments on commit a8ad08f

Please sign in to comment.