【问题标题】:Deploying from Appveyor to Nuget only on changes in a particular folder仅在特定文件夹中发生更改时从 Appveyor 部署到 Nuget
【发布时间】:2018-05-19 17:20:27
【问题描述】:

我有一个在 Appveyor 中自动构建并部署到 Nuget 的 .NET Core 项目。默认情况下,每个成功的构建都会导致一个新的 Nuget 版本。

但是,在很多情况下,由于库的实际代码没有更改,因此新版本毫无意义:

  • 自述文件已更新
  • 添加了单元测试
  • Appveyor 配置已更改
  • 其他情况

是否可以配置构建以便 Nuget 发布仅在实际代码发生更改时运行(例如,在文件夹 X 中)?

【问题讨论】:

    标签: deployment continuous-integration nuget appveyor


    【解决方案1】:

    有几个选项。

    • Commit filtering。请注意,如果文件夹 x 中没有任何内容发生更改,则不仅会跳过整个构建,而且会跳过部署。至少在添加单元测试时,您可能需要一个没有部署的构建。作为一种解决方法,请考虑添加单独的 AppVeyor 项目,该项目仅在文件夹 x 更改并保持当前项目每次都构建但不部署时才会构建和部署

    • 使用脚本检查更改的文件。如果您使用 GitHub,请查看this sample,了解如何检查这些文件。因此,如果您看到文件夹x 中的文件发生了变化,您可以将一些自定义环境变量(假设您称之为deploy_nuget)设置为true,并将其与conditional deployment 一起使用。

      李>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-07-17
      • 1970-01-01
      • 1970-01-01
      • 2020-04-03
      • 1970-01-01
      • 2011-07-11
      • 1970-01-01
      相关资源
      最近更新 更多