Skip to content

Move to Arcade 6#52255

Merged
JoeRobich merged 17 commits intodotnet:mainfrom
JoeRobich:arcade6
Apr 12, 2021
Merged

Move to Arcade 6#52255
JoeRobich merged 17 commits intodotnet:mainfrom
JoeRobich:arcade6

Conversation

@JoeRobich
Copy link
Member

@JoeRobich JoeRobich commented Mar 30, 2021

@ghost ghost added the Area-Infrastructure label Mar 30, 2021
@JoeRobich JoeRobich force-pushed the arcade6 branch 2 times, most recently from dd05957 to 9f55b02 Compare March 30, 2021 20:12
@JoeRobich JoeRobich marked this pull request as ready for review March 30, 2021 21:24
@JoeRobich JoeRobich requested review from a team as code owners March 30, 2021 21:24
@JoeRobich JoeRobich requested a review from a team as a code owner March 30, 2021 23:29
@jmarolf
Copy link
Contributor

jmarolf commented Mar 31, 2021

We are now getting the error that I saw in my original PR:

Compilation error(s) occurred:  Cannot use file stream for [D:\workspace_work\1\s\artifacts\bin\Microsoft.CodeAnalysis.CSharp.CommandLine.UnitTests\Debug\net5.0\testhost.deps.json]: No such file or directory
A fatal error was encountered. The library 'hostpolicy.dll' required to execute the application was not found in 'D:\workspace_work\1\s.dotnet'.
Failed to run as a self-contained app.

    The application was run as a self-contained app because 'D:\workspace_work\1\s\artifacts\bin\Microsoft.CodeAnalysis.CSharp.CommandLine.UnitTests\Debug\net5.0\testhost.runtimeconfig.json' was not found.
    If this should be a framework-dependent app, add the 'D:\workspace_work\1\s\artifacts\bin\Microsoft.CodeAnalysis.CSharp.CommandLine.UnitTests\Debug\net5.0\testhost.runtimeconfig.json' file and specify the appropriate framework.

For some reason several runtime files are not being deployed and/or the .NET 6 SDK now has more stringent logic about what files need to be there.

@JoeRobich
Copy link
Member Author

@jmarolf What do you make of this issue dotnet/arcade#6371 (comment)? Does it seem like the problem we are running into?

@jmarolf
Copy link
Contributor

jmarolf commented Mar 31, 2021

@jmarolf What do you make of this issue dotnet/arcade#6371 (comment)? Does it seem like the problem we are running into?

oof, that looks like it. I guess we will need to either re-write our tests or fix arcade

@JoeRobich
Copy link
Member Author

oof, that looks like it. I guess we will need to either re-write our tests or fix arcade

The macos and Linux tests pass because i assume the runner is executed by the dotnet cli. I guess perhaps they include a shim for the windows platform and it is the shim that is invoked instead of the dotnet cli.

@JoeRobich
Copy link
Member Author

oof, that looks like it.

Good news is that is not it =)

@jmarolf
Copy link
Contributor

jmarolf commented Mar 31, 2021

Good news is that is not it =)

Cool beans. I guess this is an SDK team question then if we believe its not arcade.

@JoeRobich
Copy link
Member Author

@jmarolf Pretty sure I got it this time.

Co-authored-by: Sam Harwell <sam@tunnelvisionlabs.com>
@JoeRobich
Copy link
Member Author

Seeing this error with the InteractiveHost.UnitTests when run on Windows_CoreClr. cc: @tmat, @sharwell for ideas on what to do next
image

@tmat
Copy link
Member

tmat commented Mar 31, 2021

@JoeRobich InteractiveHost targets: <TargetFrameworks>net472;net5.0-windows7.0</TargetFrameworks>
So my guess is that we need have that installed on the test machine, or roll-forward.

@JoeRobich
Copy link
Member Author

So my guess is that we need have that installed on the test machine, or roll-forward.

That makes sense since the tests no longer run on the same machine that performs the build.

@jmarolf
Copy link
Contributor

jmarolf commented Mar 31, 2021

paging @RikkiGibson how do we check what is installed on the helix machines?

<PropertyGroup>
<!-- Disable automatic global .editorconfig generation by the SDK -->
<GenerateMSBuildEditorConfigFile>false</GenerateMSBuildEditorConfigFile>
</PropertyGroup>
Copy link
Member

Choose a reason for hiding this comment

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

Couldn't we include this in VerifyValues helper for all tests?

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 feel like being explicit here isn't a bad thing. Certainly, if it became a problem to keep up with, we can extract it in the future.

<!-- SourceLink -->
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="$(MicrosoftSourceLinkVersion)" PrivateAssets="all" IsImplicitlyDefined="true" />
<PackageReference Include="Microsoft.SourceLink.AzureRepos.Git" Version="$(MicrosoftSourceLinkVersion)" PrivateAssets="all" IsImplicitlyDefined="true" />
</ItemGroup>
Copy link
Member

Choose a reason for hiding this comment

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

Any idea why do we need this? Seems like something that should be handled by Arcade.

Copy link
Member Author

Choose a reason for hiding this comment

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

@jmarolf I stole this from your PR. Is it necessary?

Copy link
Member Author

@JoeRobich JoeRobich Apr 1, 2021

Choose a reason for hiding this comment

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

hmm based on my run without the Tools.props (rolsyn CI). I see Jon opened this issue dotnet/arcade#7054. Which seems like the failure is on this line https://github.com/dotnet/arcade/blob/0b4d6253f298a5f9d6e2c4bd20e1de33a6763061/src/Microsoft.DotNet.Arcade.Sdk/tools/Publish.proj#L50

Copy link
Member Author

@JoeRobich JoeRobich Apr 1, 2021

Choose a reason for hiding this comment

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

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 am confused by this line https://github.com/dotnet/arcade/blob/0b4d6253f298a5f9d6e2c4bd20e1de33a6763061/src/Microsoft.DotNet.Arcade.Sdk/tools/Build.proj#L115. Is it removing the Publish property before the Tools.proj is restored?

Copy link
Contributor

Choose a reason for hiding this comment

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

I am confused by this line

I believe this is to override the default .NET SDK behaviors here and provide our own

Copy link
Member Author

Choose a reason for hiding this comment

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

So boils down to Roslyn CI runs -restore separate from -publish. The Tools.proj is only Restored during a restore, but the "Microsoft.DotNet.Build.Tasks.Feed" package is conditioned on publish.

@jmarolf
Copy link
Contributor

jmarolf commented Apr 1, 2021

@JoeRobich be sure to send a mail notifying everyone that they need to update to .NET 6 Preview 1 (and we also need to update the contributor docs for this)

@RikkiGibson RikkiGibson self-assigned this Apr 8, 2021
@JoeRobich JoeRobich merged commit c0e6f58 into dotnet:main Apr 12, 2021
@ghost ghost added this to the Next milestone Apr 12, 2021
@dibarbet dibarbet modified the milestones: Next, 16.10.P3 Apr 26, 2021
@JoeRobich JoeRobich deleted the arcade6 branch March 14, 2025 23:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants