Skip to content

Conversation

Youssef1313
Copy link
Member

@Youssef1313 Youssef1313 commented Sep 8, 2025

Context

Describe the context or motivation for this PR. Include links to any related Azure DevOps Work Items or GitHub issues.
📌 How to link to ADO Work Items

Depends on dotnet/sdk#50673


Task Name

DotNetCoreCLI


Description

In past, we added support for dotnet.config (this was shipped during .NET 10 previews, and will be shipped in RC1 as well).

However, starting from RC2 (if the dotnet/sdk PR above is merged), we will be dropping dotnet.config completely, and switching to global.json. This PR updates the DotNetCoreCLI task to read global.json instead of dotnet.config.


Risk Assessment (Low / Medium / High)

Low. This is a .NET 10 feature that didn't yet ship in GA and has very low number of users.


Change Behind Feature Flag (Yes / No)

Can this change be behind feature flag, if not why?

There is already a feature flag in this code path.


Tech Design / Approach

Instead of parsing dotnet.config as TOML, we parse now global.json.


Documentation Changes Required (Yes/No)

Indicate whether related documentation needs to be updated.

  • User guides, API specs, system diagrams, or runbooks are updated.

Unit Tests Added or Updated (Yes / No)

Indicate whether unit tests were added or modified to reflect these changes.

Tested manually.


Additional Testing Performed

List all other tests performed (manual or automated, including integration, regression, scenario tests, etc.).

Tested manually.


Logging Added/Updated (Yes/No)

Debug logging is added.


Telemetry Added/Updated (Yes/No)

No


Rollback Scenario and Process (Yes/No)

No


Dependency Impact Assessed and Regression Tested (Yes/No)

  • All impacted internal modules, APIs, services, and third-party libraries are analyzed.
  • Results are reviewed and confirmed to not break existing functionality.

Checklist

  • Related issue linked (if applicable)
  • Task version was bumped — see versioning guide
  • Verified the task behaves as expected

@Youssef1313
Copy link
Member Author

This change was manually tested using the following steps:

  • Updating task.json to change the ID to a new random Guid, and update the name to be "MyDotNetCoreCLI" to not clash with the original DotNetCoreCLI.
  • Build locally with node make.js build –-task DotNetCoreCLIV2 (NOTE: --task is broken today, I hacked around it and hardcoded the task name in the script)
  • tfx login (the access token needs to have Marketplace: Publish and Agent Pools: Read & Manage)
  • tfx build tasks upload --task-path "<repo-root>\_build\Tasks\DotNetCoreCLIV2"
  • In a repo to test, use the task MyDotNetCoreCLI in YML.

@tarunramsinghani
Copy link
Collaborator

/azp run

Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@tarunramsinghani
Copy link
Collaborator

/azp run

Copy link

Azure Pipelines successfully started running 3 pipeline(s).

Added error handling when parsing global.json for test runner.
@Youssef1313 Youssef1313 marked this pull request as ready for review September 10, 2025 18:33
@Youssef1313 Youssef1313 requested review from DergachevE and a team as code owners September 10, 2025 18:33
@tarunramsinghani
Copy link
Collaborator

Closing this PR as this is replaced with a local branch PR @ #21315

@Youssef1313 Youssef1313 deleted the mtp-detection branch September 11, 2025 06:49
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.

2 participants