По какой-то странной причине каждый раз, когда я развертываю свое веб-приложение в Azure, оно создает папку с именем «b» в папке wwwroot службы приложений, куда затем помещает zip-файл артефакта.
Я не могу найти в Azure какой-либо параметр, который мог бы вызвать создание этой подпапки, и я не могу найти никакой информации об этом в Интернете.
Мне удалось обойти эту проблему, установив физический путь в моем веб-приложении Azure на site\wwwroot\b и запустив сценарий после развертывания, чтобы перейти в этот каталог:
Однако теперь я заметил, что если я создам папку App_Data внутри папки «b», которую я хотел добавить для постоянных данных во время развертываний, конвейер службы приложений Azure теперь создаст еще одну подпапку с именем «b» внутри существующей папки «b». папка б».
Теоретически я мог бы просто перейти в следующую подпапку b, но мне кажется, что мне даже не нужно этого делать с самого начала.
Вот мой конвейер выпуска:
steps:
- task: AzureRmWebAppDeployment@4
displayName: 'Azure App Service Deploy'
inputs:
azureSubscription: 'PAYG(guid)'
WebAppName: AppName
ScriptType: 'Inline Script'
InlineScript: |
cd b
unzip AppName.zip
rm AppName.zip
enableCustomDeployment: true
RemoveAdditionalFilesFlag: true
AdditionalArguments: '-skip:objectName=dirPath.absolutePath=wwwroot' //this is something i tried in an attempt to force the root folder but didn't work
RenameFilesFlag: false
continueOnError: true
Есть идеи? Я в растерянности, где искать.
Кстати, вы добавили какую-нибудь команду запуска для своего приложения?
Да, сам zip-файл артефакта непосредственно содержит содержимое веб-сайта, папка b создается, когда служба приложений перемещает zip-файл в папку wwwroot, но перед извлечением. Где я могу найти WEBSITE_RUN_FROM_PACKAGE
— я полагаю, что тип развертывания установлен на веб-развертывание, если это связано с этим? Нет команд запуска для приложения. Я попробую метод CLI и посмотрю, сохранится ли проблема.
@AlvinZhao-MSFT Я пробовал использовать CLI, но проблема все еще сохраняется, zip попадает в wwwroot/b/AppName.zip
Благодарим вас за то, что вы решили опубликовать свои выводы и решения, которые могут помочь другим людям с похожими проблемами в их артефактах сборки. Еще раз спасибо за то, что поделились и поздравили!
Проблема заключалась в том, что конвейер сборки, который у меня был, архивировался дважды: один раз на задаче .net publish
и один раз на задаче archive files
. Удаление задачи архивирования решило проблему.
Привет! Могу ли я предположить, что в этом посте вас действительно беспокоит, почему и как создается подпапка
b
подwwwroot
? Это не из zip-файла артефактов, верно? Судя по текущей информации, похоже, что это не было создано конвейером. Не могли бы вы сообщить нам, является ли ваше приложение приложением для Windows или Linux? Установлен лиWEBSITE_RUN_FROM_PACKAGE
как1
? При развертывании с помощью других инструментов, таких как команда Azure CLIaz webapp deploy --resource-group <group-name> --name <app-name> --src-path <filename>.zip
в Cloud Shell или из локального PowerShell, проблема сохранится?