'Deploying Azure Function (isolated process) to Azure using Azure DevOps is not working

Currently Microsoft has introduced a new way to treat azure functions called isolated process and it's the only way to run Azure functions on .NET5.

I am trying to deploy a function app that is already running correctly on my local machine to Azure Func app through Azure DevOps. It deployed successfully but the functions don't work.

First in the deployment task I can't see .NET 5 appears as shown:

But I can see in the link here that the .NET 5 is supported as preview:

https://docs.microsoft.com/en-us/azure/azure-functions/functions-versions#languages

After deploying, I can see this error:

But I changed the configuration to this:

Also the function shown this error:

Also I can see that the function has seen as running on .NET 5 from here:

So not sure how to deploy this correctly. I know that the isolated process functions are just need the azure functions tools + running command line so not sure how to deploy it and also Microsoft didn't have any tutorial or doc about how to deploy it?



Solution 1:[1]

I found a solution for that. The problem was that Microsoft isn't supported running Isolated process functions on Linux plans.

Also as shown below, you can't create Isolated process functions from Azure portal yet (17/03/2021) so i had to create it myself as shown below:

az group create --name {resoucrce-group} --location {location}

Then

az storage account create --name {storage-name} --location {location} --resource-group {resoucrce-group} --sku Standard_LRS

Then create the function:

az functionapp create --resource-group {resoucrce-group} --consumption-plan-location {location} --runtime dotnet-isolated --runtime-version 5.0 --functions-version 3 --name {name} --storage-account {storage-name}

And now from the DevOps portal you can deploy a normal App Function on windows and here we go.

Solution 2:[2]

After creating you Azure Function App you can change FUNCTIONS_WORKER_RUNTIME and set it to dotnet-isolated in the Configuration panel.

enter image description here

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Marzouk
Solution 2 Frank Boucher