Skip to content

Conversation

@max-charlamb
Copy link
Member

@max-charlamb max-charlamb commented Oct 15, 2025

Currently .dotnet-test is located in the repo root. This presents challenges when moving tests to helix as the test root has config files used during testing.

I moved the dotnet install to /artifacts/dotnet-test which can be packaged and sent up to helix.

@max-charlamb max-charlamb requested a review from a team as a code owner October 15, 2025 18:24
steveisok
steveisok previously approved these changes Oct 15, 2025
Copy link
Member

@steveisok steveisok left a comment

Choose a reason for hiding this comment

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

LGTM as long as we're all aligned.

<Import ConfigFile="Debugger.Tests.Common.txt" />
<DotNetRoot Condition="'$(TargetArchitecture)' != 'x86'">$(RepoRootDir)\.dotnet-test</DotNetRoot>
<DotNetRoot Condition="'$(TargetArchitecture)' == 'x86'">$(RepoRootDir)\.dotnet-test\x86</DotNetRoot>
<DotNetRoot>$(ArtifactsDir)\runtime</DotNetRoot>
Copy link
Member

Choose a reason for hiding this comment

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

Previously we had a specialized directory for x86. Is that specialization no longer needed? It appears like someone testing both x64 and x86 would have the file paths collide in the same directory and the test wouldn't work.

Copy link
Member Author

Choose a reason for hiding this comment

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

My understanding is that this was implemented to mimic actual dotnet installs. @hoyosjs mentioned that on other platforms there are subfolders with different architectures as well (MacOS uses /x64).

Given this is intended to be used as a test asset, I didn't think we benefitted from copying this behavior.

$(VersionsPropsPath) - path of Versions.props
From Directory.Build.props:
$(ArtifactsRuntimeDir) - artifacts\runtime directory
Copy link
Member

Choose a reason for hiding this comment

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

The new directory name of 'runtime' feels a bit ambiguous to me. "dotnet-test" conveyed both that the files were in the dotnet layout (as opposed to CORE_ROOT layout) and also that the files were a test asset.

Copy link
Member Author

Choose a reason for hiding this comment

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

I'll change the folder to artifacts/dotnet-test

$(RepositoryEngineeringDir) - the "eng" directory
$(VersionsPropsPath) - path of Versions.props
From Directory.Build.props:
Copy link
Member

Choose a reason for hiding this comment

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

The only thing is before we supported SxS testing of x86 and x64. I am not married to this, if you're ok with that.

@max-charlamb max-charlamb merged commit 297a926 into dotnet:main Oct 17, 2025
19 checks passed
@max-charlamb max-charlamb deleted the dotnet-test branch October 17, 2025 20:30
@github-actions github-actions bot locked and limited conversation to collaborators Nov 17, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants