Azure Logic Apps is a cloud-based platform for creating and running automated workflows that integrate your apps, data, services, and systems.
Logic Apps has broadly two versions. Logic Apps Consumption and Logic Apps Standard. Whilst Consumption is effectively a completely managed platform service run by Microsoft on a multi-tenant infrastructure, it has some limitations which may require you to use the single-tenant variant - Logic Apps Standard. You can find out more about each variant of Logic Apps here.
Under the hood Logic Apps Standard is a collection of different Azure resources, including an App Service Plan, Azure Function App and Storage Account.
This article walks you through configuring and deploying the Logic Apps Standard infrastructure, ready for you to deploy your workflows to, either via the Azure portal workflow builder or Azure DevOps.
Modelling the Infrastructure
Draw your subscription container, ensure you enter the required Subscription ID property in the properties panel.
Draw a Resource Group, configure it with a Name and Location.
Draw an App Service Plan, configure it with a Name and SKU. the SKU must be set to WS1.
Draw a Function App and place it inside the App Service Plan.
Configure the Function App with the following configuration:
General Properties
Name: <choose a name for your resource>
Kind: functionapp,workflowapp
HTTPS ONLY: True
Identity
Identity: System Assigned
Site Config
App Settings: Create the following App Settings:
Name: APP_KIND
Value: workflowappName: AzureFunctionsJobHost__extensionBundle__version
Value: [1.*, 2.0.0)Name: AzureFunctionsJobHost__extensionBundle__id
Value: Microsoft.Azure.Functions.ExtensionBundle.WorkflowsName: WEBSITE_NODE_DEFAULT_VERSION
Value: ~12Name: FUNCTIONS_WORKER_RUNTIME
Value: nodeName: FUNCTIONS_EXTENSION_VERSION
Value: ~3Name: WEBSITE_CONTENTSHARE
Value: <any valid file share name>
Storage Account
Name: <choose a name for your storage account>
SKU: Standard_LRS
KIND: StorageV2
Support HTTPS Traffic Only: True
Region Virtual Network Integration
Optionally configure your function app to connect to a subnet for secure communication.
That's it, all configured. You can now save, publish and deploy your solution to Azure either using Direct deployments or the Azure DevOps.