我们为blazor webassembly项目创建了一个构建管道yaml,其中包括一个发布任务。由于某些原因,只有wwwroot文件夹项会生成到drop文件夹中,而通常位于wwwroot目录外的所有其他二进制文件也由于某些原因不会生成。
以下是构建和发布的yaml文件的一部分。生成和发布所有文件的设置是否错误,或者只是它只会给我们一个静态文件作为一个webassembly项目?
- script: dotnet build --configuration $(buildConfiguration)
displayName: 'dotnet build $(buildConfiguration)'
- task: DotNetCoreCLI@2
inputs:
command: 'publish'
publishWebProjects: true
projects: '**/*.csproj'
arguments: '--configuration $(buildConfiguration) --output $(build.artifactstagingdirectory)"'
zipAfterPublish: false
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact'
inputs:
PathtoPublish: '$(build.artifactstagingdirectory)'
condition: succeededOrFailed()
此外,由于我们发现Blazor webassembly在使用web服务的Azure配置设置时存在问题,因此我们需要让发布进程操作web.config文件,以便设置构建和部署的ASPNETCORE_ENVIRONMENT
。到目前为止,我发现的所有东西在DevOps构建管道中运行时都不起作用,因为它们是为dotnet脚本准备的。有人知道怎么做吗?我们已经尝试将site /p:EnvironmentName=Development
添加到发布任务的--output
参数中,但它表示它不能在多个项目上运行,即使我们将projects参数设置为仅一个(上面没有显示,因为我们现在将其恢复正常(。
谢谢,Chris Calvert
你试过这个吗?
- 任务:DotNetCoreCLI@2displayName:发布输入:命令:发布publishWebProjects:True自变量:"--configuration$(buildConfiguration(--output"$(build.artifactstagingdirectory("/p: EnvironmentName=开发zipAfterPublish:真