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”无效。无法检测到该目录。请验证您的部署配置文件反映了您的存储库结构。
如果其他人从谷歌或其他地方看到这篇文章,我遇到了与上面安德烈完全相同的问题,但在我的一生中,我无法在这里得到公认的解决方案。
\n无论我输入什么app_location:
,该任务都拒绝看到任何文件。
经过进一步调查,我发现了这个 github 问题,它声称以下内容(强调我的):
\n\n\nAzureStaticWebApp 任务\xe2\x80\x99s 应用程序位置相对于当前目录
\n
查看文档,我们可以看到此任务使用默认目录$(System.DefaultWorkingDirectory)
,但由于某种原因该目录与不同$(Pipeline.Workspace)
。
因此,如果您发现自己陷入相同的位置并且无法让此任务识别您的工件,解决方案是添加cwd: $(Pipeline.Workspace)
到您的任务中,例如
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
归档时间: |
|
查看次数: |
3589 次 |
最近记录: |