【问题标题】:VSTS - include folder into ASP.NET Core app artifactVSTS - 将文件夹包含到 ASP.NET Core 应用程序工件中
【发布时间】:2017-09-03 09:00:35
【问题描述】:

我在一个单独的仓库中有一个 Angular 4 项目 (NG-p)。另外,我的 ASP.NET Core 项目 (Core-p) 在另一个仓库中。构建 Cope-p 时,它必须包含 NG-p 工件。我设法做到了。以下是它的工作原理:

  • 当 NG-p 发生变化时,VSTS 会构建它并将 zip 文件放入 Azure 存储中
  • Core-p 在那之后被构建并产生......嗯,一些东西......作为 BUILD .NET Core 任务的一部分
  • 它从 Azure 存储中抓取该 zip 文件(NG-p 工件),将其解压缩并放入 $(Build.ArtifactStagingDirectory)/wwwroot/js/app 文件夹中
  • 其他一切都是标准任务 - 测试、发布、发布工件

构建成功。但是当我打开工件时,它包含:

  • wwwroot 文件夹(其中包含所有 NG-p 文件)
  • 和 myproject.zip 文件(Core-p 的所有内容)

如何在 myproject.zip 中保存我的 NG-p 文件(并且没有单独的 wwwroot 文件夹)?

【问题讨论】:

    标签: angular azure-pipelines


    【解决方案1】:

    是的,您可以在myproject.zip 中制作 NG-p 文件和 Core-p 文件。要将 NG-p 文件转换为 myproject.zip,您需要在 Core-p 构建定义中执行以下任务:

    1. 提取文件:在 Azure 中提取 zip 文件并将 zip 文件归档到 $(Build.ArtifactStagingDirectory)(目标文件夹)。
    2. 复制文件:将文件从 Core-p 存储库的根目录复制到 $(Build.ArtifactStagingDirectory)(目标文件夹)。
    3. 存档文件:将$(Build.ArtifactStagingDirectory) 文件夹中的文件压缩为$(Build.ArtifactStagingDirectory)/myproject.zip 中的zip(要创建的存档文件)。

    1. 发布构建工件:将myproject.zip 发布为工件。

    【讨论】:

      【解决方案2】:

      好的,我通过将提取文件任务中的目标路径更改为以下内容来使其工作: $(Build.ArtifactStagingDirectory)/$(Build.Repository.Name)/wwwroot/js/app

      现在,所有文件都在正确的位置。

      【讨论】:

        猜你喜欢
        • 2016-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-07-30
        • 1970-01-01
        • 2018-01-22
        • 1970-01-01
        • 2013-05-28
        相关资源
        最近更新 更多