【问题标题】:Jenkins - Do not run build steps if there are no changes in git詹金斯 - 如果 git 没有变化,不要运行构建步骤
【发布时间】:2016-02-21 02:44:32
【问题描述】:

我正在设置 jenkins 以使用 git 和 maven 创建战争版本。我在 bitbucket 中创建了一个挂钩来调用 jenkins build 还提到了 jenkins 中的分支名称以在特定分支中构建。问题是每当有任何分支中的新提交时,jenkins 都会构建和重新部署 war 文件。 我需要的是,如果 git 没有变化,jenkins 应该中止构建。请帮忙。

编辑: 我确实使用插件在 Maven 级别尝试过

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <configuration>
        <archive>
            <forced>false</forced>
        </archive>
    </configuration>
</plugin>`

如果“没有要编译的源代码”,maven 仍在构建 war 文件。

【问题讨论】:

    标签: java git maven jenkins


    【解决方案1】:

    当您configure BitBucket to call a jenkins job 时,它将在任何推送时调用它(与分支无关)

    你的詹金斯工作应该负责:

    • 第 1 步:分析 json 负载(即,自 2015 年 7 月以来,“更全面、更具描述性的负载”)
    • 第 2 步:如果在有效负载中检测到正确的分支,则触发 第二个 Jenkins 作业,负责获取 git 存储库并启动构建。
      例如,您可以使用BuildResultTrigger Plugin

    【讨论】:

    • 看起来这是唯一的方法。谢谢您的帮助。需要一些繁重的工作。您是否有任何链接说明如何解析 json 有效负载?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-14
    • 1970-01-01
    • 1970-01-01
    • 2018-02-13
    • 2018-01-23
    • 2016-09-08
    • 1970-01-01
    相关资源
    最近更新 更多