通过构建或发布管道将资源文件添加到Azure App Service

时间:2019-12-16 23:05:32

标签: azure-devops azure-pipelines

假设我具有以下回购结构

common-images
src/webapi
src/webapi/images

我想做的是将文件从common-images复制到生成的webapi文件夹中的文件夹中,以便在运行API时可以引用它们。

如何使用Azure DevOps管道做到这一点?

我的猜测是,我可以在构建管道中使用“复制文件”的组合来执行此操作,然后在App Service部署中以某种方式使用“后脚本”来执行此操作,但是我不确定如何执行此操作。

1 个答案:

答案 0 :(得分:0)

  

通过构建或发布管道将资源文件添加到Azure App Service

您可以添加MSBuild目标,以将那些额外的文件添加到程序包中,因此将以下脚本添加到项目文件.csproj

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

  <Target Name="CustomCollectFiles">
    <ItemGroup>
      <_CustomFiles Include="PathToTheFiles\common-images\*.ts" />
      <FilesForPackagingFromProject  Include="%(_CustomFiles.Identity)">
        <DestinationRelativePath>bin\*.ts</DestinationRelativePath>
      </FilesForPackagingFromProject>
    </ItemGroup>
  </Target>

检查the ticket了解更多详细信息。

然后,我们可以将Azure CLIAzure App Service deploy用于Azure App Service。

希望这会有所帮助。