I have not tested this yet, but it appears that copy/copyIndex should now be a supported scenario for traffic manager endpoints:
https://feedback.azure.com/forums/217313-networking/suggestions/12907815-support-copy-copyindex-in-traffic-manager-depend
Here is a sample that I implemented a while back:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"solution-abbreviation": {
"type": "string",
"minLength": 1
},
"environment-abbreviation": {
"type": "string",
"allowedValues": [
"dev",
"test",
"prod"
]
},
"userinterface-abbreviation": {
"type": "string",
"minLength": 1
},
"userinterface-locations": {
"type": "array",
"minLength": 1
},
"userinterface-appserviceplan-sku": {
"type": "string",
"allowedValues": [
"Free",
"Shared",
"Basic",
"Standard"
]
},
"userinterface-appserviceplan-workersize": {
"type": "string",
"allowedValues": [
"0",
"1",
"2"
]
},
"userinterface-appserviceplan-numberofworkers": {
"type": "int"
}
},
"variables": {
"userinterface-trafficmanager-name": "[concat(parameters('solution-abbreviation'), '-', parameters('environment-abbreviation'), '-', parameters('userinterface-abbreviation'))]"
},
"resources": [
{
"name": "[concat(variables('userinterface-trafficmanager-name'), '-', parameters('userinterface-locations')[copyIndex()])]",
"type": "Microsoft.Web/serverfarms",
"location": "[parameters('userinterface-locations')[copyIndex()]]",
"apiVersion": "2014-06-01",
"dependsOn": [ ],
"tags": {
"displayName": "[concat(variables('userinterface-trafficmanager-name'), '-', parameters('userinterface-locations')[copyIndex()])]"
},
"copy": {
"name": "[concat('serverfarms', '-copy')]",
"count": "[length(parameters('userinterface-locations'))]"
},
"properties": {
"name": "[concat(variables('userinterface-trafficmanager-name'), '-', parameters('userinterface-locations')[copyIndex()])]",
"sku": "[parameters('userinterface-appserviceplan-sku')]",
"workerSize": "[parameters('userinterface-appserviceplan-workersize')]",
"numberOfWorkers": "[parameters('userinterface-appserviceplan-numberofworkers')]"
}
}
],
"outputs": {
}
}