I cannot find a way to deploy workflows into a Standard Logic App when this Logic App is included in an App Service Plan included in an Azure Service Environment (ASEv3).
When I use a Standard Logic App without ASE, its content (Workflows, maps, schemas…) is stored in the FileShare of the Storage Account associated with the Standard Logic Apps (under site\wwwroot) So updating or creating new workflows for a Logic App was pretty easy, just update the file workflow.json or create an extra folder with a new file workflow.json.
I could use CLI to upload a zip file with all workflows and artifacts.
az logicapp deployment source config-zip --name $LogicApp --resource-group $RG --subscription $Subscription --src $artifactszip
And that works fine.
But when I try the same with a Standard Logic App in an App Service Plan associated with an ASE, this does not work.
az logicapp deployment source config-zip
fails with these errors:az : WARNING: Getting scm site credentials for zip deployment WARNING: Starting zip deployment. This operation can take a while to complete ... ERROR: The command failed with an unexpected error. Here is the traceback: ERROR: HTTPSConnectionPool(host='mylaname.scm.myasename.appserviceenvironment.net', port=443): Max retries exceeded with url: /api/zipdeploy?isAsync=true (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x068F51C0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed'))
In both cases (without and with ASE), the target Logic App is a stateless Logic App.
I tried also with az deployment group create --resource-group $RG --template-file .\myarmfile.json
That works fine for:
But not for
I used ARMCLIENT to get examples of arm files for Microsoft.Web/sites/workflow
armclient.exe get https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{LAresourceGroup}/providers/Microsoft.Web/sites/la-main-dev/workflows/wf-main-dev?api-version=2018-11-01
That returns a nice arm file but I can't find a way to upload it to Azure.
The solution is to setup a DNS Private zone as documented in Microsoft Learn (https://learn.microsoft.com/en-us/azure/app-service/environment/create-ilb-ase) :
To configure DNS in Azure DNS Private zones:
When this DNS zone is created and that I linked to it:
then I can deploy successfully the workflows and other artifacts (parameters, Maps, Schemas) via:
or
az webapp deployment source config-zip --name $LA --resource-group $RG --subscription $Subscription --src $artifactszip