Skip to content

Conversation

@analogrelay
Copy link
Member

This PR explores an approach to supporting package-specific tests in PR builds, such as Cosmos DB's need for Emulator tests, and tests for the C bindings.

Changes includes:

  • Refactored the PowerShell code to test an individual package into Test-Package.ps1
  • Changed Test-Packages to call Test-Package in a loop in a SEPARATE pwsh process (thus isolating environment variables so that a package can freely set env vars in its setup without worrying about having to clean them up)
  • Added an optional Test-Additional.ps1 script that a package can define to run additional tests after the main Rust tests. This isn't really different from just putting those tests in Test-Cleanup.ps1 but it felt like a good idea to allow them to be separate.
  • The logic that computes the packages in the repo now accepts packages that set publish to an array of registries, allowing us to mark packages that should be treated as "public" but not actually published to crates.io (for example, the azure_data_cosmos_native package, which represents production code that will eventually be GA, but isn't publishable to crates.io)

@github-actions github-actions bot added the Cosmos The azure_cosmos crate label Nov 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Cosmos The azure_cosmos crate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant