Skip to content

Move Test Config to Jsonc#4297

Draft
benrr101 wants to merge 10 commits into
mainfrom
dev/russellben/config-jsonc
Draft

Move Test Config to Jsonc#4297
benrr101 wants to merge 10 commits into
mainfrom
dev/russellben/config-jsonc

Conversation

@benrr101
Copy link
Copy Markdown
Contributor

@benrr101 benrr101 commented May 20, 2026

Description

As a byproduct of the PR pipeline, I got annoyed with the red squigglies under the comments in the test config.json file. Technically speaking jsonc files support comments while json does not. So, this small PR does the following:

  • Changes the config.default.json file to config.default.jsonc
  • Rewrites the Config.Load logic so that it tries the environment variable path first, config.jsonc second, then config.json before failing.
  • Makes Config class #nullable
  • Sync'd the config.default.json file with the fields that actually exist (and removed unused fields).
  • Remove dependency on Newtonsoft.Json from TestUtilities and push it back to ManualTests.

🤖

Used 🤖 to find remaining references to config.json and replace with references to config.jsonc

Issues

N/A

Testing

Everything builds, but I want to validate with a PR run before taking it out of draft state.

Copilot AI review requested due to automatic review settings May 20, 2026 03:44
@github-project-automation github-project-automation Bot moved this to To triage in SqlClient Board May 20, 2026
public string DNSCachingConnString = null;
public string DNSCachingServerCR = null; // this is for the control ring
public string DNSCachingServerTR = null; // this is for the tenant ring
public bool IsAzureSynapse = false; // True for Azure Data Warehouse/Synapse
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This was removed as it is not used.

public string AliasName = null;

public static Config Load(string configPath = @"config.json")
public static Config Load(string configPath)
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This was added as an escape hatch for preserving the behavior of ExtUtilities project. I have plans to remove the ExtUtilities project, so this method will hopefully go away someday.

"WorkloadIdentityFederationServiceConnectionId": "",
"KerberosDomainPassword": "",
"KerberosDomainuser": "",
"IsManagedInstance": false
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

These fields exist in Config class, but did not in the json file.

"SupportsIntegratedSecurity": true,
"LocalDbAppName": "",
"LocalDbSharedInstanceName": "",
"SupportsFileStream": false,
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This field did not exist in the Config class.

"DNSCachingServerTR": "",
"IsDNSCachingSupportedCR": false,
"IsDNSCachingSupportedTR": false,
"IsAzureSynapse": false,
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This field existed in the Config class, but was removed since it's unused.

This comment was marked as outdated.

Copilot AI review requested due to automatic review settings May 20, 2026 17:15
@benrr101 benrr101 added this to the 7.1.0-preview2 milestone May 20, 2026

This comment was marked as outdated.

Copilot AI review requested due to automatic review settings May 20, 2026 20:01

This comment was marked as outdated.

Copilot AI review requested due to automatic review settings May 20, 2026 23:56

This comment was marked as outdated.

@benrr101 benrr101 force-pushed the dev/russellben/config-jsonc branch from 5885bb9 to 57e9b41 Compare May 21, 2026 00:09
Copilot AI review requested due to automatic review settings May 21, 2026 15:51
Copy link
Copy Markdown
Contributor

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

Copilot reviewed 14 out of 15 changed files in this pull request and generated 4 comments.

Comment thread eng/pipelines/common/templates/steps/update-config-file-step.yml
Comment thread eng/pipelines/kerberos/sqlclient-kerberos.yml
Comment thread TESTGUIDE.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: To triage

Development

Successfully merging this pull request may close these issues.

3 participants