Auto-update submodules to the commits used in latest ProdCon build#371
Conversation
1b95baf to
6fe0356
Compare
| for which dotnet/versions commit was last used to update the dependency. | ||
| --> | ||
| <PropertyGroup> | ||
| <ProdConCurrentRef>7daa2e55de668c4c8ee832059aab04917153881e</ProdConCurrentRef> |
There was a problem hiding this comment.
|
I forgot to actually update BuildTools here, and that this branch pulls BuildTools release/2.1. Submitted dotnet/buildtools#1975 to port the updater to 2.1 BuildTools, then I'll update this PR. |
| </Target> | ||
|
|
||
| <Import Project="$(ProjectDir)dependencies.targets" /> | ||
| <Import Project="$(ProjectDir)dependencies.targets" Condition="Exists('$(ProjectDir)dependencies.targets')" /> |
There was a problem hiding this comment.
I'm not sure I understand why you added the condition. You are adding the files, so they will always exists, right?
There was a problem hiding this comment.
Kinda described in the commit message:
There's no need for the BfS tarball to include these files: it doesn't need to run repo-global auto-updates like submodule update.
The project files that get into the tarball are manually listed here:
source-build/build-source-tarball.sh
Lines 41 to 49 in e2ecb4c
I figure things that aren't used in the tarball build aren't included, and there's no need to add these two files to that list.
@crummel is that the intention? Does it need to be so explicit?
There was a problem hiding this comment.
I think we want to keep the tarball as minimal as possible so if the workaround isn't causing too much extra work I think we'd prefer to keep it out. If it's causing issues we can include the new files.
There was a problem hiding this comment.
The only concern I have is that someone could add something to dependencies.props/targets and expect it to be set during all source-build builds. Not sure how easy that would be to debug depending on what's added.
Keeping it out of the tarball is a bit of complexity that I'm not sure we need. But maintaining that list of files is also annoying... would *.proj, *.props, *.targets at the root be ok?
|
Look like the buildtools upgrade broke the build in general. Lots of: Makes sense: BuildTools merged I think the cleanest way to get this feature in is to update to preview2 commits first. Getting it working should involve updating BuildTools, so this PR wouldn't need to handle upgrading BuildTools over the preview1-preview2 border. |
|
I talked with @eerhardt and @weshaggard about the CI errors in dotnet/standard. The plan is to update standard's release/2.0.0 branch to use a compatible BuildTools. @eerhardt pointed out that the change to use the CLI's copy of MSBuild rather than the one from BuildTools is probably what's breaking--I'm working on fixing and making a dotnet/standard PR. What I was talking about above about 2.1-preview1 vs. 2.1-preview2 doesn't really apply in this case, since we're still building dotnet/standard 2.0. |
Auto-update submodules to ProdCon build commits, and BuildTools.
51f0ce8 to
c08c825
Compare
To try it out, use
build.cmd /t:UpdateDependenciesto update based on theProdConCurrentRefsource of truth (e.g. if you want to pin to a specific ProdCon build) andbuild.cmd /t:UpdateToRemoteDependenciesto update to the latest manifest on dotnet/versions master.Uses new updater and dependency info from dotnet/buildtools#1968.
There's some metadata checked into the project files that this updater won't change. I have a followup issue for that: #370.
#342
Also adds a BuildTools updater: #270