Add assembly signing for Microsoft.Data.SqlClient.Internal.Logging - #4567
Draft
paulmedynski wants to merge 2 commits into
Draft
Add assembly signing for Microsoft.Data.SqlClient.Internal.Logging#4567paulmedynski wants to merge 2 commits into
paulmedynski wants to merge 2 commits into
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Updates CI pipelines to strong-name sign the Microsoft.Data.SqlClient.Internal.Logging assembly during internal package builds.
Changes:
- Threads signing and internal-build parameters through pipeline templates.
- Downloads the secure signing key for internal package builds.
- Passes
SigningKeyPathduring package creation.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
eng/pipelines/stages/build-logging-package-ci-stage.yml |
Forwards signing-related parameters. |
eng/pipelines/jobs/pack-logging-package-ci-job.yml |
Downloads the key and signs internal packages. |
eng/pipelines/dotnet-sqlclient-ci-core.yml |
Connects core pipeline parameters to the logging stage. |
Suppressed comments (1)
eng/pipelines/jobs/pack-logging-package-ci-job.yml:132
- The linked PR metadata is not aligned with this change: issue #123 is about SQL Graph
SqlBulkCopycolumn mappings and PR #456 is about large UDT buffers, neither of which concerns signingMicrosoft.Data.SqlClient.Internal.Logging. Please replace these stale references with the relevant signing issue or remove them so the change remains traceable to the correct requirements.
buildProperties: SqlClientPackageVersion=${{ parameters.packageVersion }};BuildNumber=$(Build.BuildNumber);SigningKeyPath=$(driverKeyFile.secureFilePath)
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Introduce the shared signing-key download step and thread isInternalBuild through the CI core so the SqlServer package is strong-name signed on internal Package-mode builds. - Add eng/pipelines/common/steps/download-assembly-signing-key.yml, which exports driverKeyFile or testKeyFile from ADO secure files. - Adopt that step in the OneBranch build and nightly CI package pipelines, renaming keyFile to driverKeyFile. - Declare isInternalBuild in dotnet-sqlclient-ci-core.yml and set it from the CI package- and project-reference pipelines. - Sign the SqlServer package when isInternalBuild is true and referenceType is not Project.
Thread referenceType and isInternalBuild into the Logging stage and pack job so the Logging package is strong-name signed on internal Package-mode builds. Abstractions references Logging, so Logging must be signed before Abstractions can be; a strong-named assembly referencing a weak-named one fails with CS8002, which is an error here because TreatWarningsAsErrors is enabled. Logging has no test project yet, so no test-assembly signing or signed InternalsVisibleTo grant is added.
paulmedynski
force-pushed
the
dev/paul/assembly-signing-logging
branch
from
August 21, 2026 15:33
38d1007 to
98a4e2a
Compare
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.
Description
Provide a summary of the changes being introduced. Important topics to cover
include:
High quality descriptions will lead to a smoother review experience.
Issues
Link to any relevant issues, bugs, or discussions (e.g.,
Closes #123,Fixes issue #456).Testing
Describe the automated tests (unit, integration) you created or modified.
Provide justification for any gap in automated testing. List any manual testing
steps that were performed to ensure the changes work.
Guidelines
Please review the contribution guidelines before submitting a pull request: