Не удалось обнаружить этот каталог

У меня есть реагирующее приложение, и мне нужно его собрать и развернуть в статическом веб-приложении... Но я столкнулся с проблемой.

Проблема:

Deploying project to Azure Static Web Apps...
Could not find StaticSitesClient local binary
- Downloading https://swalocaldeploy.azureedge.net/downloads/1.0.026911/linux/[email protected]
[swa] ✔ Downloading https://swalocaldeploy.azureedge.net/downloads/1.0.026911/linux/[email protected]
- Preparing deployment. Please wait...
✖App Directory Location: '/home/vsts/work/1/a/####.zip' is invalid. Could not detect this directory. Please verify your deployment configuration file reflects your repository structure.

Часть кода, вызывающая проблему:

    - task: Bash@3
      inputs:
        targetType: inline
        script: |
          npm install -g @azure/static-web-apps-cli
          swa deploy $(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip --app-name $(STATIC_WEB_APP_NAME) --resource-group $(TFSTATE_RESOURCE_GROUP_NAME) --deployment-token $(STATICWEBAPP_DEPLOYMENT_TOKEN)
      displayName: 'Deploy to Azure Static Web App'

код, в котором я его создал, я создаю артефакт:

    - task: ArchiveFiles@2
      inputs:
        rootFolderOrFile: '$(Build.SourcesDirectory)/FrontEnd/dist'
        includeRootFolder: false
        archiveType: 'zip'
        archiveFile: '$(Build.ArtifactStagingDirectory)/$(Build.BuildId).zip'
        replaceExistingArchive: true
      displayName: 'Archive files'

    - task: PublishBuildArtifacts@1
      inputs:
        PathtoPublish: '$(Build.ArtifactStagingDirectory)'
        ArtifactName: 'staticAppArtifact'
      displayName: 'Publish Artifact'

Вы можете помочь мне?

Я попробовал несколько способов решить эту проблему, но безуспешно


115
1

Ответ:

Решено

Я могу воспроизвести ту же проблему при использовании интерфейса swa для развертывания статического веб-приложения Azure.

Причина проблемы в том, что команда не поддерживает развертывание zip-пакетов в статическом веб-приложении Azure.

Чтобы решить эту проблему, вы можете напрямую определить путь к папке dist в команде swa Deploy.

Например:

 swa deploy $(Build.SourcesDirectory)/FrontEnd/dist/  --app-name $(STATIC_WEB_APP_NAME) --resource-group $(TFSTATE_RESOURCE_GROUP_NAME) --deployment-token $(STATICWEBAPP_DEPLOYMENT_TOKEN)

Для получения более подробной информации вы можете обратиться к этому документу: Развертывание статического веб-приложения с помощью интерфейса командной строки статических веб-приложений Azure