diff --git a/engine/baml-runtime/src/cli/generate.rs b/engine/baml-runtime/src/cli/generate.rs index 29a138061f..381f89fb55 100644 --- a/engine/baml-runtime/src/cli/generate.rs +++ b/engine/baml-runtime/src/cli/generate.rs @@ -30,7 +30,11 @@ impl GenerateArgs { } fn generate_clients(&self, defaults: super::RuntimeCliDefaults) -> Result<()> { - let runtime = BamlRuntime::from_directory(&self.from, std::env::vars().collect()) + // Set BAML_GENERATE to prevent starting the tracing publisher + let mut env_vars: std::collections::HashMap = std::env::vars().collect(); + env_vars.insert("BAML_GENERATE".to_string(), "1".to_string()); + + let runtime = BamlRuntime::from_directory(&self.from, env_vars) .context("Failed to build BAML runtime")?; let src_files = baml_src_files(&self.from) .context("Failed while searching for .baml files in baml_src/")?; diff --git a/engine/baml-runtime/src/tracingv2/publisher/publisher.rs b/engine/baml-runtime/src/tracingv2/publisher/publisher.rs index 7b73ed4f57..d92d69051d 100644 --- a/engine/baml-runtime/src/tracingv2/publisher/publisher.rs +++ b/engine/baml-runtime/src/tracingv2/publisher/publisher.rs @@ -183,6 +183,10 @@ pub fn start_publisher( lookup: Arc, #[cfg(not(target_arch = "wasm32"))] rt: Arc, ) { + if lookup.env_var("BAML_GENERATE").is_some() { + log::debug!("Skipping publisher because BAML_GENERATE is set"); + return; + } if lookup.env_var("BOUNDARY_API_KEY").is_none() { log::debug!("Skipping publisher because BOUNDARY_API_KEY is not set"); return; diff --git a/integ-tests/typescript/package.json b/integ-tests/typescript/package.json index bbf93b0049..38b05ce8ea 100644 --- a/integ-tests/typescript/package.json +++ b/integ-tests/typescript/package.json @@ -11,7 +11,8 @@ "integ-tests:dotenv": "tsc && pnpm test -- --silent false --testTimeout 30000", "generate": "baml-cli generate --from ../baml_src", "memory-test": "BAML_LOG=info infisical run --env=test -- pnpm test -- --silent false --testTimeout 60000 -t 'memory'", - "typecheck": "tsc --noEmit" + "typecheck": "tsc --noEmit", + "build:debug": "cd ../../engine/language_client_typescript && pnpm build:debug" }, "keywords": [], "author": "", diff --git a/package.json b/package.json index 82abea9b76..61efd8526e 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "format:fix": "biome check --write", "docker-build": "bash build-docker.sh", "test": "turbo run test", - "integ-tests": "pnpm run generate && turbo run integ-tests" + "integ-tests:ts": "turbo run build:debug --filter=@boundaryml/baml && cd integ-tests/typescript && pnpm generate && pnpm integ-tests" }, "devDependencies": { "@infisical/cli": "0.41.89", diff --git a/turbo.json b/turbo.json index 46edbac768..ad19f127f8 100644 --- a/turbo.json +++ b/turbo.json @@ -191,6 +191,27 @@ ], "cache": false }, + "@boundaryml/baml#build:debug": { + "outputs": ["dist/**", "build/**", "artifacts/**"], + "cache": false + }, + "integ-tests:ts": { + "dependsOn": ["build:debug"], + "outputs": [ + "coverage/**", + ".coverage/**", + "junit.xml", + "test-results/**" + ], + "cache": false, + "env": [ + "OPENAI_API_KEY", + "ANTHROPIC_API_KEY", + "GOOGLE_API_KEY", + "AWS_*", + "INTEG_TESTS_*" + ] + }, "integ-tests": { "dependsOn": ["build"], "outputs": [