任务 AzureStaticWebApp@0“无法检测到此目录”但已呈现

And*_*zev 3 azure-devops azure-pipelines azure-static-web-app

我正在使用 AzureDevOps 构建管道,但遇到了一个奇怪的问题。

这是我的管道:

- stage: 'Test'
  displayName: 'Deploy to the test environment'
  dependsOn: Build
  jobs:
    - job: 'Deploy'
      steps:
      - download: current
        artifact: lorehub-front
      - bash: cd $(Pipeline.Workspace); echo $(ls)
      - bash: cd $(Pipeline.Workspace)/lorehub-front; echo $(ls)
      - task: AzureStaticWebApp@0
        displayName: 'Publish to Azure Static WebApp'
        inputs:
          app_location: $(Pipeline.Workspace)/lorehub-front
          azure_static_web_apps_api_token: xxxx
Run Code Online (Sandbox Code Playgroud)

第一个 bash 显示存在文件夹“lorehub-front”

第二个 bash 显示内部文件夹是正确的文件(index.html 等)

脚本内容:cd /home/vsts/work/1/lorehub-front;回声 $(ls)

android-chrome-192x192.png android-chrome-512x512.png apple-touch-icon.png css env-config.js favicon-16x16.png favicon-32x32.png favicon.ico 字体 index.html js site.webmanifest

但我收到此错误:

应用程序目录位置:“/home/vsts/work/1/lorehub-front”无效。无法检测到该目录。请验证您的部署配置文件反映了您的存储库结构。

Kus*_*han 6

如果其他人从谷歌或其他地方看到这篇文章,我遇到了与上面安德烈完全相同的问题,但在我的一生中,我无法在这里得到公认的解决方案。

\n

无论我输入什么app_location:,该任务都拒绝看到任何文件。

\n

经过进一步调查,我发现了这个 github 问题,它声称以下内容(强调我的):

\n
\n

AzureStaticWebApp 任务\xe2\x80\x99s 应用程序位置相对于当前目录

\n
\n

查看文档,我们可以看到此任务使用默认目录$(System.DefaultWorkingDirectory),但由于某种原因该目录与不同$(Pipeline.Workspace)

\n

因此,如果您发现自己陷入相同的位置并且无法让此任务识别您的工件,解决方案是添加cwd: $(Pipeline.Workspace)到您的任务中,例如

\n
strategy:\nrunOnce:\n  deploy:\n    steps:\n      - download: current\n        artifact: WebApp\n      - task: AzureStaticWebApp@0\n        inputs:\n          app_location: /\n          skip_app_build: true\n          azure_static_web_apps_api_token: $(deployment_token)\n          cwd: $(Pipeline.Workspace)/WebApp\n
Run Code Online (Sandbox Code Playgroud)\n