Skip to content

Conversation

paulmedynski
Copy link
Contributor

Description

@paulmedynski paulmedynski added this to the 6.0.3 milestone Sep 3, 2025
@Copilot Copilot AI review requested due to automatic review settings September 3, 2025 11:00
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR backports database name length fixes and adds configurable test timeout to the 6.0 branch to address macOS test failures.

  • Reduces maximum generated database name length from 128 to 96 characters to prevent macOS SQL Server naming issues
  • Adds configurable test timeout parameter (defaulting to 90 minutes) across all CI pipeline templates to handle longer-running tests on different platforms

Reviewed Changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/Microsoft.Data.SqlClient/tests/ManualTests/DataCommon/DataTestUtility.cs Updates database name generation to enforce 96-character limit with proper bracket handling
eng/pipelines/dotnet-sqlclient-signing-pipeline.yml Adds testsTimeout parameter with 90-minute default
eng/pipelines/dotnet-sqlclient-ci-project-reference-pipeline.yml Adds testsTimeout parameter and passes it to core template
eng/pipelines/dotnet-sqlclient-ci-package-reference-pipeline.yml Adds testsTimeout parameter and passes it to core template
eng/pipelines/dotnet-sqlclient-ci-core.yml Adds testsTimeout parameter and passes it to test stage template
eng/pipelines/common/templates/stages/ci-run-tests-stage.yml Adds testsTimeout parameter and passes it to job templates
eng/pipelines/common/templates/jobs/run-tests-package-reference-job.yml Adds timeout parameter and applies timeoutInMinutes configuration
eng/pipelines/common/templates/jobs/ci-run-tests-job.yml Adds timeout parameter and applies timeoutInMinutes configuration

cheenamalhotra
cheenamalhotra previously approved these changes Sep 3, 2025
benrr101
benrr101 previously approved these changes Sep 3, 2025
@paulmedynski paulmedynski dismissed stale reviews from benrr101 and cheenamalhotra via 5459c4b September 5, 2025 12:58
- Backported part of #3494 and all of #3591:
  - Added configurable test jobs timeout, defaulting to 90 minutes.
  - Reduced generated database names to 96 chars to try to fix macOS test failures.Increase test jobs timeout (#3591)

- Fixed the unique name generators to:
  - Keep max lengths to 30 and 96 characters respectively.
  - Ensure uniqueness at the start of the names.
  - Added link to database identifier syntax.
@paulmedynski paulmedynski force-pushed the dev/paul/release/6.0/fix-macos branch from 09ad2f2 to a213d8e Compare September 10, 2025 13:07
paulmedynski and others added 4 commits September 15, 2025 09:04
- Added a new test that was erroneously removed in the earlier cherry-pick.
- Added MDS_TEST_CONFIG environment variable to unit test config to override where the confi.json file is read from.
- Updated xUnit to 2.9.3 to avoid transitive System.Net.Http vulnerability warnings.
- Fixed cherry-pick of old function name.
- Removed macOS Azure SQL test configuration that uses service principal based auth that our Azure tenant no longer supports.
UserManagedIdentityClientId: $(UserManagedIdentityClientId)
LocalDbAppName: $(LocalDbAppName)
LocalDbSharedInstanceName: $(LocalDbSharedInstanceName)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Had to remove this entirely since our tenant just doesn't support Service Principal based auth any more. We can add something back for macOS later if necessary.

@paulmedynski paulmedynski changed the title [6.0] Backport mac server name fix [6.0] Stabilize CI Pipelines Sep 17, 2025
paulmedynski and others added 4 commits September 17, 2025 07:52
- Adding console diagnostics to slow enclave tests.
- Adding console diagnostics to slow enclave tests.
- Adding console diagnostics to slow enclave tests.
* Initial removal of CertificateUtility.CreateCertificate

One test implied that DataTestUtility.AKVUrl would point to an RSA key which aligned with the certificate's private key. Switching this to dynamically generate the key in places.

* Hotfix for Azure Key Vault tests

* Removed hardcoded references to Azure Key Vault key

* Removed hardcoded references to CertificateUtilityWin

These were mostly related to generating CSP keys.

* Code review changes

* Reorder properties and constructors
* Move AEConnectionStringProviderWithCspParameters to its own file
* Tweak to the AKV token acquisition

* Code review

Redundant bracket, alphabetised the ManualTesting csproj

* Update src/Microsoft.Data.SqlClient/tests/ManualTests/AlwaysEncrypted/TestFixtures/SQLSetupStrategy.cs

Let's try @edwardneal's idea

Co-authored-by: Edward Neal <[email protected]>

* Update src/Microsoft.Data.SqlClient/tests/ManualTests/AlwaysEncrypted/TestFixtures/SQLSetupStrategy.cs

Co-authored-by: Edward Neal <[email protected]>

* Fixes as per @edwardneal's suggestions

* Fix as per @edwardneal's suggestion

* Fix missing `new`

Co-authored-by: Edward Neal <[email protected]>

* Update src/Microsoft.Data.SqlClient/tests/ManualTests/AlwaysEncrypted/TestFixtures/SQLSetupStrategyAzureKeyVault.cs

Co-authored-by: Edward Neal <[email protected]>

* Update src/Microsoft.Data.SqlClient/tests/ManualTests/AlwaysEncrypted/TestFixtures/SQLSetupStrategyAzureKeyVault.cs

Co-authored-by: Edward Neal <[email protected]>

* Address comment that we don't need a CspParameters object as part of the test arguments
* Move test arguments into property (the class was only used in a single location)
* Cleanup test code
* Tweak default provider discovery code to handle edge cases a bit better

* Address comment regarding readonly member variables
Apply long line chomping

* Addressing the last of the comments.

---------

Co-authored-by: Edward Neal <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants