Получение ERROR_FILE_IN_USE при использовании веб-развертывания в задаче службы приложений Azure v3 - PullRequest
0 голосов
/ 25 сентября 2018

Подобные вопросы задавались несколько раз, но большинство ответов старые и могут применяться только частично.Этот вопрос относится только к использованию Web Deploy через Azure DevOps / Azure Pipelines с использованием задачи «Развертывание службы приложений Azure», версия 3. *.

Не удалось развернуть веб-пакет в службе приложений.

Попробуйте снова развернуть службу приложения с выбранным параметром Переименовать заблокированные файлы.

Код ошибки: ERROR_FILE_IN_USE

Дополнительная информация: Web Deploy не может изменить файл 'VBCSCompiler.exe' в месте назначения, посколькуон заблокирован внешним процессом.Чтобы разрешить операцию публикации, вам может потребоваться либо перезапустить приложение, чтобы снять блокировку, либо использовать обработчик правил AppOffline для приложений .Net при следующей попытке публикации.Узнайте больше: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_FILE_IN_USE.

Там есть две рекомендации:

  1. Выберите опцию «Переименовать заблокированные файлы»
  2. Перезапустите приложение
  3. Используйте правило AppOffline

Кроме того, документация для задачи повторяет рекомендации 1 и 3.

Чтобы избежать сбоя развертывания с ошибкойкод ERROR_FILE_IN_USE, если приложения .NET ориентированы на веб-приложение в Windows, убедитесь, что включены «Переименовать заблокированные файлы» и «Отключить приложение».Для развертывания без простоев используйте слот подкачки.

Однако эти рекомендации уже действуют.Deployment settings

Осталось только рекомендация 2: перезапустить службу.По многим причинам я не должен возвращаться к этому.

Почему 1 и 3 недостаточно для успешного завершения развертывания?

Ответы [ 2 ]

0 голосов
/ 09 ноября 2018

Я говорил с представителем службы поддержки Microsoft, и мне сказали, что «Переименовать заблокированные файлы» работает только для библиотек DLL.

Но я нашел решение, которое сработало для меня.В «Дополнительные аргументы» я добавил «-useChecksum».Поэтому задача «Развернуть службу приложений Azure» теперь выглядит следующим образом

enter image description here

У меня с тех пор не было никаких проблем.

0 голосов
/ 02 октября 2018

Здесь отслеживается проблема: Сбой развертывания службы приложений Azure для .net core 2.0 с ERROR_FILE_IN_USE и на основе комментария vincentdass" PR # 8457 за использование новой версии MSDeploy в соответствии с рекомендацией команды Web Deploy . "В следующей версии будет обновление для msdeploy.

Однако вы можете просто проверить Publish Using Web Deploy и Rename Locked Files, а затем создать новое развертывание.Повторное развертывание не будет работать, потому что оно не зафиксирует ваши изменения в определении выпуска.

Ссылка ниже в потоке, вы можете проверить обсуждение этой проблемы и устранить неполадки соответственно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...