首页 > 解决方案 > 如何在 Azure Pipelines 上打包 .net framework Web App

问题描述

我需要为用 .net 框架编写的 Web 应用程序创建一个 azure 工件。该工件将用于自动化部署。

如果我使用通用工件发布器,我将在工件和其他不需要的项目中包含代码文件。

有一些等效的方法可以为构建在 .net 框架上的经典 Web 应用程序构建干净的工件吗?

标签: .netiisazure-devopsazure-pipelines

解决方案


通过在构建时自动运行发布找到了解决方案。步骤是:

  1. 创建一个发布到文件夹配置文件,名称FolderProfile

    我使用了指向 bin\app.publish 的目标路径的默认值

  2. 使用FolderProfile保存的配置文件将 MS Build 用于发布到文件夹。在构建解决方案任务之后,将以下任务添加到 yaml 文件:

    - task: MSBuild@1
      inputs:
        solution: 'MyPortal\MyPortal.csproj'
        msbuildArchitecture: 'x64'
        msbuildArguments: '/p:DeployOnBuild=true /p:PublishProfile=FolderProfile'
    
  3. 通过将另一个任务添加到 yaml 文件,将工件发布到 azure 管道:

     - task: PublishPipelineArtifact@1
      inputs:
        targetPath: '$(Build.Repository.LocalPath)\MyPortal\bin\app.publish'
        artifact: 'My portal'
        publishLocation: 'pipeline'
    

推荐阅读