【问题标题】:Monorepo, Travis and Matrix builds: How do I build a specific path only when it changes?Monorepo、Travis 和 Matrix 构建:如何仅在特定路径发生更改时构建特定路径?
【发布时间】:2017-01-28 12:01:51
【问题描述】:

我有一个包含多个 (java/gradle) 项目的仓库:

project-a/
project-b/
project-c/

我想创建一个矩阵构建配置,每个项目一个构建。而且我只想在项目发生变化的情况下构建该项目。

这可能吗?

我可以轻松地创建一个脚本来检查文件夹是否受到使用$TRAVIS_COMMIT_RANGE 的影响。但是我将如何在.travis.yml 中使用它?

编辑

adding support for include/exclude paths for when to trigger builds 在 Travis 中存在问题。有了矩阵支持,这将解决我的问题。

【问题讨论】:

标签: build continuous-integration travis-ci


【解决方案1】:

您基本上以一种或另一种形式询问条件构建。不幸的是the documentation about conditional builds 声明

通过矩阵扩展创建的作业目前不能有条件。

...即使它支持这一点,我也没有看到任何简单的方法来检查the list of supported conditions 中的提交路径。

尽管如此,可以使用他们的 API 来实现该过程。您可以创建一个旨在仅运行脚本的构建配置,并检查现在需要构建哪个子项目。这个元构建脚本可以trigger a travis build via the API。在该文档页面上,您可以找到如何从矩阵触发特定作业的示例。

【讨论】:

    猜你喜欢
    • 2020-02-25
    • 1970-01-01
    • 2015-05-31
    • 2011-07-11
    • 1970-01-01
    • 1970-01-01
    • 2019-06-27
    • 2015-06-05
    • 1970-01-01
    相关资源
    最近更新 更多