递归逻辑应用程序活动ARM模板自动化

问题描述 投票:0回答:1

我们正在研究ARM模板,以使用天蓝色逻辑应用程序安排自定义工作流程,该模板的第一个活动为“重复发生”。另外,我们正在使用ARM模板自动部署逻辑应用程序

对于具有递归参数的ARM模板,最好的方法是什么,因为它具有很多频率,并且处理所有带参数的参数将在ARM模板\参数中暴露太多参数或还有哪些其他选项可用于处理这种情况

azure azure-resource-manager azure-logic-apps
1个回答
0
投票

我处理这种情况的方式是通过使用允许值限制参数集合中的允许值来固定参数可以接受的值。重复触发有四个配置项,分别是频率,间隔,开始时间和时区,可以使用手臂模板参数将其输入值。以下是一个示例ARM模板,该模板部署具有重复触发的逻辑应用程序。请注意参数,因为我已经锁定了允许的值。

{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
    "workflows_testla1_name": {
        "defaultValue": "testla1",
        "type": "string"
    },
    "param_recurrence_interval": {
        "type":"int",
        "defaultValue": 2,
        "allowedValues": [
            1,
            2,
            3,
            4,
            5,
            6
        ]
    },
    "param_recurrence_frequency": {
        "type": "string",
        "defaultValue": "Minute",
        "allowedValues": [
            "Day",
            "Hour",
            "Minute",
            "Month",
            "Second",
            "Week",
            "Year"
        ]
    },
    "param_recurrence_startTime":{
        "type": "string",
        "allowedValues": [
            "2020-03-14T00:00:00Z"
        ]
    },
    "param_recurrence_timeZone" : {
        "type": "string",
        "defaultValue": "Cen. Australia Standard Time",
        "allowedValues": [
            "Cen. Australia Standard Time"
        ]
    }
},
"resources": [
    {
        "apiVersion": "2017-07-01",
        "dependsOn": [],
        "location": "australiaeast",
        "name": "[parameters('workflows_testla1_name')]",
        "properties": {
            "definition": {
                "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
                "contentVersion": "1.0.0.0",
                "parameters": {},
                "triggers": {
                    "Recurrence": {
                        "recurrence": {
                            "frequency": "[parameters('param_recurrence_frequency')]",
                            "interval": "[parameters('param_recurrence_interval')]",
                            "startTime": "[parameters('param_recurrence_startTime')]",
                            "timeZone": "[parameters('param_recurrence_timeZone')]"
                        },
                        "type": "Recurrence"
                    }
                },
                "outputs": {}
            },
            "parameters": {},
            "state": "Enabled"
        },
        "scale": null,
        "tags": {},
        "type": "Microsoft.Logic/workflows"
    }
],
"variables": {}}

附带的参数文件如下所示

{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
    "workflows_testla1_name": {
        "value": "testla1"

    },
    "param_recurrence_interval": {
        "value": 3
    },
    "param_recurrence_frequency": {
        "value": "Hour"
    },
    "param_recurrence_startTime":{
       "value": "2020-03-14T00:00:00Z"
    },
    "param_recurrence_timeZone" : {
      "value": "Cen. Australia Standard Time"
    }
}}
© www.soinside.com 2019 - 2024. All rights reserved.