.net - 如何在 Azure Pipelines 上打包 .net framework Web App
问题描述
我需要为用 .net 框架编写的 Web 应用程序创建一个 azure 工件。该工件将用于自动化部署。
如果我使用通用工件发布器,我将在工件和其他不需要的项目中包含代码文件。
有一些等效的方法可以为构建在 .net 框架上的经典 Web 应用程序构建干净的工件吗?
解决方案
通过在构建时自动运行发布找到了解决方案。步骤是:
创建一个发布到文件夹配置文件,名称
FolderProfile
。我使用了指向 bin\app.publish 的目标路径的默认值
使用
FolderProfile
保存的配置文件将 MS Build 用于发布到文件夹。在构建解决方案任务之后,将以下任务添加到 yaml 文件:- task: MSBuild@1 inputs: solution: 'MyPortal\MyPortal.csproj' msbuildArchitecture: 'x64' msbuildArguments: '/p:DeployOnBuild=true /p:PublishProfile=FolderProfile'
通过将另一个任务添加到 yaml 文件,将工件发布到 azure 管道:
- task: PublishPipelineArtifact@1 inputs: targetPath: '$(Build.Repository.LocalPath)\MyPortal\bin\app.publish' artifact: 'My portal' publishLocation: 'pipeline'