Commit 94f22bc
CHORE: Build Pipeline Modernization - Multi-Platform Support, Security Compliance & Test Infrastructure (microsoft#328)
### Work Item / Issue Reference
<!--
IMPORTANT: Please follow the PR template guidelines below.
For mssql-python maintainers: Insert your ADO Work Item ID below (e.g.
AB#37452)
For external contributors: Insert Github Issue number below (e.g. microsoft#149)
Only one reference is required - either GitHub issue OR ADO Work Item.
-->
<!-- mssql-python maintainers: ADO Work Item -->
>
[AB#40501](https://sqlclientdrivers.visualstudio.com/c6d89619-62de-46a0-8b46-70b92a84d85e/_workitems/edit/40501)
-------------------------------------------------------------------
### Summary
<!-- Insert your summary of changes below. Minimum 10 characters
required. -->
This pull request makes a comprehensive overhaul to the
`OneBranchPipelines/build-release-package-pipeline.yml` file to improve
clarity, documentation, and security compliance for building and
releasing the `mssql-python` package. The changes include detailed
comments, improved parameterization, expanded platform support, and
enhanced security scanning. The pipeline is now more maintainable and
easier to understand, with explicit configuration for each platform and
build stage.
### Pipeline Structure and Documentation Improvements
* Added extensive header and inline documentation throughout the
pipeline YAML, explaining platform support, build strategies, security
features, and SDL compliance requirements.
* Organized pipeline sections with clear thematic dividers and comments,
making the YAML much easier to read and maintain.
[[1]](diffhunk://#diff-3db20ac3b805d9b3612357e92c428cda06eaa8a8fa2fafe94ecc247177608996L26-R57)
[[2]](diffhunk://#diff-3db20ac3b805d9b3612357e92c428cda06eaa8a8fa2fafe94ecc247177608996L36-R89)
### Platform and Build Configuration Enhancements
* Expanded and clarified platform build matrices for Windows, macOS, and
Linux, including ARM64 and Universal2 support, with explicit
configuration for each Python version and architecture.
* Updated build stages to reflect new platform configurations, including
explicit dependencies for the Consolidate stage and improved artifact
collection.
### Security and Compliance Improvements
* Enhanced SDL (Security Development Lifecycle) configuration, enabling
comprehensive security scanning (BinSkim, CredScan, PoliCheck, CodeQL,
SBOM generation, etc.) and providing detailed justifications for
disabled tasks.
* Improved handling of official vs. non-official builds, ensuring
scheduled builds always use full SDL compliance and updating variable
logic accordingly.
### Variable and Resource Management
* Refactored variable templates and group imports for clarity, including
effective build type logic and Azure DevOps variable group
documentation.
### Build Stage Details
* Added detailed comments and step-by-step breakdowns for each
platform's build stage, including testing, artifact publishing, and
security scanning procedures.
[[1]](diffhunk://#diff-3db20ac3b805d9b3612357e92c428cda06eaa8a8fa2fafe94ecc247177608996L260-R454)
[[2]](diffhunk://#diff-3db20ac3b805d9b3612357e92c428cda06eaa8a8fa2fafe94ecc247177608996L291-R465)
---------
Co-authored-by: David Engel <dengel1012@gmail.com>
Co-authored-by: MerlinBot <MerlinBot>
Co-authored-by: Saurabh Singh (SQL Drivers) <saurabh.singh@microsoft.com>1 parent bef6ed8 commit 94f22bc
File tree
5 files changed
+675
-188
lines changed- OneBranchPipelines
- stages
- tests
5 files changed
+675
-188
lines changed
0 commit comments