Azure DevOps dotnet publish Task Fail for .NET 5 Projects
Issue
The following is the error message:
##[warning].NET 5 has some compatibility issues with older Nuget versions(<=5.7), so if you are using an older Nuget version(and not dotnet cli) to restore, then the dotnet cli commands (e.g. dotnet build) which rely on such restored packages might fail. To mitigate such error, you can either: (1) - Use dotnet cli to restore, (2) - Use Nuget version 5.8 to restore, (3) - Use global.json using an older sdk version(<=3) to build
Info: Azure Pipelines hosted agents have been updated and now contain .Net 5.x SDK/Runtime along with the older .Net Core version which are currently lts. Unless you have locked down a SDK version for your project(s), 5.x SDK might be picked up which might have breaking behavior as compared to previous versions. You can learn more about the breaking changes here: https://docs.microsoft.com/en-us/dotnet/core/tools/ and https://docs.microsoft.com/en-us/dotnet/core/compatibility/ . To learn about more such changes and troubleshoot, refer here: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/build/dotnet-core-cli?view=azure-devops#troubleshooting
Related issue: https://github.com/microsoft/azure-pipelines-tasks/issues/15071
Context
My solution relies on .NET SDK 3 (for Azure function) and 5. To make them work, I've split the built into two pipelines. The build succeeded.
Resolution
TBA.
Hi Asif,
I eventually upgraded to use .NET 6 for my Azure Functions and there is no issues: Build Azure Functions V4 with .NET 6.
Do you have to use .NET Core 3? If not, I would suggest upgrade to the latest versions.