-
Notifications
You must be signed in to change notification settings - Fork 437
Stop making src modifications to every repo's NuGet.config #18478
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Stop making src modifications to every repo's NuGet.config #18478
Conversation
|
Ooh! |
src/SourceBuild/content/repo-projects/source-build-reference-packages.proj
Show resolved
Hide resolved
|
Hmm, after rebasing to accept changes in main, I tried to do another local VMR build, which failed. It seems that I could likely update my changes to utilize the SDK package from PSB. |
It only ever sets it to a single config file. In my work for the parallel builds, I've gotten rid of the ItemGroup and just using the single property. So if it makes your implementation simpler to do the same, I think you should go for it. |
That's not what's happening in main. I'm looking at the builds in the pipeline and they are building SBRP first. |
This was output to console:
@ViktorHofer it seems that this was updated with #18402 |
Right, the property was renamed. If it's not working in your branch, you may need to clean your environment and re-run prep. |
Thanks, I'll try that. I do see that official builds are working fine, building SBRP before arcade, so this is only an issue in my environment, which is good. |
ViktorHofer
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will review this more carefully tomorrow. I still haven't fully understood the direction taken here but I'm sure I will understand it tomorrow.
...ld/content/eng/tools/tasks/Microsoft.DotNet.SourceBuild.Tasks.XPlat/GetJsonAttributeValue.cs
Outdated
Show resolved
Hide resolved
...ld/content/eng/tools/tasks/Microsoft.DotNet.SourceBuild.Tasks.XPlat/GetJsonAttributeValue.cs
Outdated
Show resolved
Hide resolved
...ld/content/eng/tools/tasks/Microsoft.DotNet.SourceBuild.Tasks.XPlat/GetJsonAttributeValue.cs
Outdated
Show resolved
Hide resolved
...ld/content/eng/tools/tasks/Microsoft.DotNet.SourceBuild.Tasks.XPlat/GetJsonAttributeValue.cs
Outdated
Show resolved
Hide resolved
...ld/content/eng/tools/tasks/Microsoft.DotNet.SourceBuild.Tasks.XPlat/GetJsonAttributeValue.cs
Outdated
Show resolved
Hide resolved
...ld/content/eng/tools/tasks/Microsoft.DotNet.SourceBuild.Tasks.XPlat/GetJsonAttributeValue.cs
Outdated
Show resolved
Hide resolved
Contributes to: dotnet/source-build#3170 Backport of changes in dotnet/installer#18478 ### Description Each .NET repo needs to specify all used SDKs in `global.json` file. This change adds the missing SDK.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work. This looks much better now with single msbuild sdk versions and with the NuGetConfig simplication. The current state will break the MSFT builds so I would advise to either wait for @akoeplinger's CI PR to get merged in or do local builds on Unix and Windows with the final state of the PR (before it goes in).
| }, | ||
| "msbuild-sdks": { | ||
| "Microsoft.Build.NoTargets": "3.7.0", | ||
| "Microsoft.Build.Traversal": "3.4.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FYI I logged dotnet/source-build#4085 to remove the old versions of these package from SBRP.
Fixes: dotnet/source-build#3170
With this change, there will be no more modifications of
NuGet.configfiles during source-build.Few notes about implementation:
RestoreConfigFileproperty is used, for overriding resolution ofNuGet.configfilesaspnetcore,fsharpandsource-build-externals. It might be possible to modify the invocation of those projects to honor the MSBuild property. I've left the env.var. for now and looking for feedback on this.RestoreConfigFileproperty. This utilizesSourceBuiltSdkResolverfunctionality.NuGet.configfiles per repo. I've preserved the support for multiple files. Some changes would have been simpler if we got rid of that support. However, it seems that only one file was used, so I'm unsure why infra supports multiple, and if we should make any changes now.RestoreConfigFileproperty in following repos:aspnetcore,runtime,source-build-reference-packagesglobal.jsonfiles, inrazorandsdk, to add the missing SDK package reference. All other repos have proper SDK references inglobal.json. New code, I'm adding, queries data fromglobal.jsonto determine if we need to override any SDKs and which version.global.jsonin 2 repos.Backport PRs: