替换服务网址为手臂模板

时间:2019-10-17 22:11:51

标签: azure-api-management arm-template

我有一个将API部署到API管理实例的ARM模板

这是一个API的示例

{
  "properties": {
    "authenticationSettings": {
      "subscriptionKeyRequired": false
    },
    "subscriptionKeyParameterNames": {
      "header": "Ocp-Apim-Subscription-Key",
      "query": "subscription-key"
    },
    "apiRevision": "1",
    "isCurrent": true,
    "subscriptionRequired": true,
    "displayName": "DDD.CRM.PostLeadRequest",
    "serviceUrl": "https://test1/api/FuncCreateLead?code=XXXXXXXXXX",
    "path": "CRMAPI/PostLeadRequest",
    "protocols": [
      "https"
    ]
  },
  "name": "[concat(variables('ApimServiceName'), '/mms-crm-postleadrequest')]",
  "type": "Microsoft.ApiManagement/service/apis",
  "apiVersion": "2019-01-01",
  "dependsOn": []
}

当我将其部署到不同的环境时,我希望能够根据环境替换服务URL。我想知道最好的方法吗?

我可以读取配置文件或类似的文件吗?

在部署时,我有一个变量来告诉我环境,因此我可以以此为基础进行决策。只是不确定最好的方法

1 个答案:

答案 0 :(得分:1)

请参阅有关ARM模板参数:https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-authoring-templates#parameters可以在单独的文件中指定它们。因此,您将只有一个模板,但是环境特定的参数文件。