Is there any (rough) timeframe on MSBUILD15, NuGet4 and Visual Studio 2017
See original GitHub issueOur Scenario:
I have upgraded one of our hybrid solution from XPROJ+CSPROJ based projects to VS2017 compatible (new-CSPROJ + old-CSPROJ) based infrastructure. That requires MSBuild v15.0, Nuget v4.0 and some Visual Studio 2017 to be present on the build machine. As we have auto deployment from source control, we are blocked to exercise it in production due to these missing tools in App Service instances and continuing to rely on outdated dotnet-cli v1.0.0-preview2-xxx (x64).
Background:
Usually, people are either using solutions (SLN) comprised of “all” .NET Core projects (e.g. new CSPROJ) or “all” .NET Framework (old CSPROJ) based projects. The former is built either by dotnet-cli or MSBuild 15. Whereas, the latter one is built only by Visual Studio <many versions>
(MSBuild 14, 15 etc.).
Then there are Hybrid or Mixed solutions, which use either both old and new CSPROJs added to SLN or all new CSPROJs that are targeting .NET Framework 4.6 for example. These kind of solutions are only buildable by Visual Studio 2017 (MSBuild 15 and NuGet4.0).
In a nutshell; the Roslyn project system, that is based on the Visual Studio 2017’s Common Project System (CPS), is built on top of the .NET SDK that supports multiple Target Framework Monikers (TFM). Which means in the new kind of CSPROJ file, we can specify the <TargetFrameworks>
(plural) member with multiple values (not limited to those of .NET Standard and .NET Core, but also) Xamarin and Full .NET Framework etc. as well. So the use-cases can be beyond the hybrid SLN.
Problem:
dotnet-cli
commands (dotnet-restore
, dotnet-build
etc.) only function on .NET Core TFMs (netcoreapp1.0 netstandard1.6 etc.), but not Full Framework monikers net45x, net46x.
The only toolset that support the RPS->CPS or Hybrid / Mixed solution workflow is: MSBuild15, NuGet4.0 and potentially some other components which gets installed with VS2017.
Question:
Can we get any estimated timeframe (quarter / year) by which these tools would be available in Azure App Service instances?
Thanks for your continuous support! 🎉
Issue Analytics
- State:
- Created 6 years ago
- Reactions:6
- Comments:5 (1 by maintainers)
@am11 @ebashmakov @ctaggart we actually have msbuild15.3 preview in Azure, but it is not turned on by default. you can see its location in kudu console:
to use it you will need to have a custom deployment script with at least these two modification:
nuget.exe restore "{your .sln file path}" -MSBuildPath "%MSBUILD_15_DIR%"
"%MSBUILD_15_DIR%\MSBuild.exe {your build arguments}"
here is an example
Well explained! I’d really like to see MSBuild15 available too. #2350 Add “Build Tools for Visual Studio 2017” to Azure App Service asks for this.