Развертывание шаблона ARM с двумя привязками имен хостов возвращает ошибку конфликта, которую невозможно изменить, поскольку выполняется другая операция

Я пытаюсь развернуть шаблон ARM через Azure DevOps. Я пробовал провести тестовое развертывание (Test-AzResourceGroupDeployment) через PowerShell без каких-либо проблем.

Эта проблема сохраняется в течение нескольких недель, и я читал некоторые сообщения, в которых говорилось, что она исчезла через несколько часов или через день, однако для меня это не так.

В Azure DevOps моя сборка проходит отлично. Но когда я пытаюсь создать выпуск через свой конвейер выпуска с использованием ресурса «Развертывание группы ресурсов Azure», он не выдаст ошибку:

"Code": "Conflict",
  "Message": "Cannot modify this site because another operation is in progress. Details: Id: 4f18af87-8848-4df5-82f0-ec6be47fb599, OperationName: Update, CreatedTime: 9/27/2019 8:55:26 AM, RequestId: 691b5183-aa8b-4a38-8891-36906a5e2d20, EntityType: 3"

Обновить

Позже я заметил, что ошибка появляется при попытке развернуть hostNameBindings для сайта.

У меня есть 2 разных hostNameBindings в моем шаблоне, что вызывает сбой.

Очевидно, он не работает, потому что он пытается развернуть их обоих одновременно, хотя я не знаю очевидного исправления для этого, поэтому любая помощь все равно будет оценена!

Я попытался использовать функцию копирования, но, насколько я знаю, это сделает точную копию для обоих hostNameBindings, что мне не нужно. во-первых, у них разные имена и свойства, у кого-нибудь есть исправление для этого?


person Sean D'Arcy    schedule 27.09.2019    source источник
comment
У меня такая же проблема с шаблоном ARM для развертывания приложения-функции Azure.   -  person Sagar Kulkarni    schedule 27.09.2019
comment
Не уверены, что проблема в Azure? Если проблема будет решена, я буду рад получить известие от вас!   -  person Sean D'Arcy    schedule 27.09.2019
comment
просто проверяю статус Azure для служб. status.azure.com/en-us/status/history Был проблема с развертыванием службы приложений 23 августа 2019 г.   -  person Sagar Kulkarni    schedule 27.09.2019


Ответы (3)


Сделайте одну привязку hostNameBindings зависимой от привязки имени другого хоста. Затем они будут выполняться один за другим, и вы не должны получать одно и то же сообщение об ошибке.

"dependsOn": [
  "[resourceId('Microsoft.Web/sites/', variables('websitename'))]",
  "[resourceId('Microsoft.Web/sites/hostNameBindings/',variables('websitename'), variables('firstbindingame-aftertheslash-sowithoutthewebsitename'))]"
],
person Erik Steinebach    schedule 04.11.2019
comment
Спасибо! Это сработало отлично, но я упустил тот факт, что для этого требовалось 3 параметра. Мне нужно было добавить: [resourceId ('Microsoft.Web / sites / hostNameBindings', parameters ('websiteName'), concat (parameters ('websiteName'), '.azurewebsites.net'))] - person Karl Gjertsen; 23.04.2020

Похоже, люди уже замечают эту проблему и пытаются ее исправить. https://status.azure.com/

История статуса Azure

person Sagar Kulkarni    schedule 27.09.2019

У меня была такая же проблема при использовании Копировать для добавления нескольких пользовательских доменов. Благодаря Дэвиду Гнанасекарана блог Мне удалось исправить эту проблему.

По умолчанию функция копирования выполняется параллельно. Установив mode на serial и установив batchSize на 1, я не получил operation is in progress ошибок.

Вот моя часть шаблона ARM для установки пользовательских доменов.

"copy": {
        "name": "hostNameBindingsCopy",
        "count": "[length(parameters('customDomainNames'))]",
        "mode": "Serial",
        "batchSize": 1
      },
      "apiVersion": "[variables('webApiVersion')]",
      "name": "[concat(variables('webAppName'), '/', parameters('customDomainNames')[copyIndex()])]",
      "type": "Microsoft.Web/sites/hostNameBindings",
      "kind": "string",
      "location": "[resourceGroup().location]",
      "condition": "[greater(length(parameters('customDomainNames')), 0)]",
      "dependsOn": [
        "[resourceId('Microsoft.Web/sites', variables('webAppName'))]"
      ],
      "properties": {
        "customHostNameDnsRecordType": "CName",
        "hostNameType": "Verified",
        "siteName": "parameters('webAppName')"
      }
person Mathijs Vlasveld    schedule 31.03.2020