【问题标题】:Create a job in Jenkins automatically when a repo is created in Phabricator在 Phabricator 中创建 repo 时自动在 Jenkins 中创建作业
【发布时间】:2015-04-23 06:37:11
【问题描述】:

我在 phabricator 有一个 repo,并在我的本地机器中克隆。

现在我想在 Phabricator 中创建一个新的仓库后自动创建一个新的 Jenkins 作业。 Jenkins API 可用于远程创建新作业。

根据詹金斯的说法:

要创建新作业,请使用查询参数 name=JOBNAME 将 config.xml 发布到此 URL。您需要发送一个 Content-Type: application/xml 标头。

我可以使用terminal通过以下命令创建作业。

curl -X POST -H "Content-Type:application/xml" -d "<project><builders/><publishers/><buildWrappers/></project>" "http://ip:port/createItem?name=AA_TEST_JOB1" 

问题:如何运行 Harbormaster 的命令来创建 Jenkins 作业并发送 config.xml 文件以配置该新作业?

【问题讨论】:

    标签: jenkins phabricator


    【解决方案1】:

    Guy Warner (http://www.guywarner.com/) 做了很多工作来证明这是可能的。您可以访问他的博文了解更多详情:http://www.guywarner.com/2014/05/integrating-jenkins-and-phabricator.html(第 1 部分)和 http://www.guywarner.com/2014/06/part-2-integrating-phabricator-and.html(第 2 部分)。

    基本思想是您的 Harbormaster 构建计划将向您的 Jenkins 实例发出 HTTP 请求。

    我们使用他的教程设置了近 100 个构建,这些构建基于不同类型的更改从 Phabricator 触发。

    【讨论】:

      【解决方案2】:
      • 实际上,在 Phabricator 中创建新 repo 后,没有设置或自动创建 Jenkins 作业的方法。

      • 我已经解决了这个编辑 Phabricator php 代码的问题。简单的方法是在创建 repo 后从 php 代码中调用 Jenkins API。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-05-17
        • 2018-02-02
        • 2015-10-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多