azure-devops - VSTS 构建定义 - 添加其他文件以构建输出

标签 azure-devops ms-release-management azure-pipelines

使用 RMO,我创建了一个 Visual Studio 构建定义。在“复制文件”步骤中,如果我将内容指定为

**\*.zip

它会创建我编译的项目的 zip 文件以及 web.config 文件。我需要向此 zip 添加一些额外的配置文件,这些文件是解决方案级别文件夹,而不是在项目文件夹中。这 3 个文件在预构建事件中复制到项目文件夹中。所以我无法为这些文件设置 Build Action = Content。

最佳答案

您可以将以下代码添加到项目文件中,以在构建过程中将额外的文件包含在 zip 中:

<Target Name="CustomCollectFiles">
    <ItemGroup>
      <_CustomFiles Include="PathToExtraFile" />
        <FilesForPackagingFromProject Include="%(_CustomFiles.Identity)">
          <DestinationRelativePath>%(RecursiveDir)%(Filename)%(Extension)</DestinationRelativePath>
        </FilesForPackagingFromProject>
      </ItemGroup>
  </Target>

  <PropertyGroup>
    <CopyAllFilesToSingleFolderForPackageDependsOn>
      CustomCollectFiles;
      $(CopyAllFilesToSingleFolderForPackageDependsOn);
    </CopyAllFilesToSingleFolderForPackageDependsOn>
    <CopyAllFilesToSingleFolderForMsdeployDependsOn>
      CustomCollectFiles;
      $(CopyAllFilesToSingleFolderForPackageDependsOn);
    </CopyAllFilesToSingleFolderForMsdeployDependsOn>
  </PropertyGroup>

详细信息请参阅此链接:ASP.NET Web Deployment using Visual Studio: Deploying Extra Files

关于azure-devops - VSTS 构建定义 - 添加其他文件以构建输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36131714/

相关文章:

visual-studio-2015 - MS 发布管理系统变量

powershell - 以编程方式独立于构建触发发布

azure - 如何更改管道变量以供在 Azure DevOps 的下一个构建中使用

azure - 使用 Github CICD 运行 Azure DevOps 管道时,具有 ID 的 Terraform 资源已存在错误

azure-devops - 可以在任何分支提交上触发 Azure Devops Pipeline 吗?

ms-release-management - 从 VSTS 发布管理将网站版本部署到 Azure

c# - 发布期间的 Azure DevOps XML 转换不起作用

powershell - 如何使用 PowerShell 取消和删除队列中等待的构建

azure-devops - 在vsts构建期间设置 "Path"环境变量,以便它在构建任务(特别是vsTest任务)之间持久存在

azure - 如何从管道获取 Azure Active Directory 用户详细信息?