FEAT: Add Azure SQL Database to PR validation pipeline matrix#428
Merged
gargsaumya merged 7 commits intomainfrom Feb 13, 2026
Merged
FEAT: Add Azure SQL Database to PR validation pipeline matrix#428gargsaumya merged 7 commits intomainfrom
gargsaumya merged 7 commits intomainfrom
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the Azure DevOps PR validation pipeline to optionally run the existing test suite against an Azure SQL Database in addition to the current LocalDB / local SQL Server / containerized SQL Server configurations.
Changes:
- Adds AzureSQL entries to the Windows, macOS, and Linux job matrices, intended to be enabled when
AZURE_CONNECTION_STRINGis set. - Skips Docker/Colima + SQL Server container startup steps when running the AzureSQL matrix leg(s).
- Runs pytest with Azure SQL connection settings and produces separate test/coverage outputs (Windows) and Azure-specific test steps (macOS/Linux).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
📊 Code Coverage Report
Diff CoverageDiff: main...HEAD, staged and unstaged changesNo lines with coverage information in this diff. 📋 Files Needing Attention📉 Files with overall lowest coverage (click to expand)mssql_python.pybind.logger_bridge.hpp: 58.8%
mssql_python.pybind.logger_bridge.cpp: 59.2%
mssql_python.row.py: 66.2%
mssql_python.pybind.ddbc_bindings.cpp: 69.3%
mssql_python.pybind.ddbc_bindings.h: 69.7%
mssql_python.pybind.connection.connection.cpp: 75.3%
mssql_python.ddbc_bindings.py: 79.6%
mssql_python.pybind.connection.connection_pool.cpp: 79.6%
mssql_python.cursor.py: 84.7%
mssql_python.__init__.py: 84.9%🔗 Quick Links
|
c68611b to
336aeb0
Compare
bewithgaurav
previously approved these changes
Feb 10, 2026
- Add AzureSQL matrix entry to Windows x64 job (Python 3.13) - Add AzureSQL matrix entry to macOS x86_64 job with Docker/Colima skip conditions - Add Debian_AzureSQL matrix entry to Linux x86_64 job - All entries gated on AZURE_CONNECTION_STRING pipeline variable being set - Azure SQL test steps use instead of localhost
336aeb0 to
870e3fe
Compare
870e3fe to
14e580e
Compare
sumitmsft
approved these changes
Feb 13, 2026
jahnvi480
approved these changes
Feb 13, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Work Item / Issue Reference
Summary
This pull request updates the
eng/pipelines/pr-validation-pipeline.ymlfile to streamline Windows testing jobs and introduce new Azure SQL Database testing jobs for Windows, macOS, and Linux environments. The most significant changes are the removal of temporary CodeQL workarounds and the addition of cross-platform jobs for testing against Azure SQL Database.Azure SQL Database testing jobs (new functionality):
PytestOnWindows_AzureSQL,PytestOnMacOS_AzureSQL, andPytestOnLinux_AzureSQLjobs to run tests directly against Azure SQL Database, gated by theENABLE_AZURE_SQLvariable. These jobs set up dependencies, build bindings, execute tests, and publish results for each platform.Pipeline cleanup (removal of temporary workarounds):