【问题标题】:Can Jenkins build code to remote servers when triggered by GitHub webhook?被 GitHub webhook 触发时,Jenkins 可以将代码构建到远程服务器吗?
【发布时间】:2015-10-17 14:56:50
【问题描述】:

我有一个“主”服务器(实际上是 docker 容器),我想在其中安装 Jenkins,以便将它(使用 webhook)与 github 存储库链接起来,因此每次开发人员推送代码时,jenkins 都会自动拉取并构建代码。

问题是有任意数量的额外“从”服务器需要与主服务器具有完全相同的代码。

我正在考虑编写一个 Ansible playbook,每次 webhook 运行时由 Jenkins 执行并将代码发送给 slave。

詹金斯可以做这样的事情吗?

我是否需要使用 Jenkins 和 webhook 对所有从站进行相同的设置?

编辑:

我想在将有 jenkins 的服务器上运行一个 locustio 主服务器。我的负载测试将从那里的 Github 中提取,但相同的代码需要驻留在从属服务器中才能在分布式模式下运行。

【问题讨论】:

  • 我不确定我是否完全理解你的意思。在您的设置中添加更多细节可能会很有用,例如解释哪些服务在哪些服务器上运行。

标签: github jenkins ansible continuous-deployment


【解决方案1】:

对您的问题的简短回答是,Jenkins 确实有能力运行 Ansible 剧本。您可以将构建步骤添加到正在接收将运行 playbook 的 web 挂钩的项目。

【讨论】:

  • 感谢 Dan,我知道我可以在构建后给 Jenkins 一个脚本来运行(Ansible playbook)。我想知道我是否可以全部由 Jenkins 完成,而根本不使用 Ansible。
【解决方案2】:

jenkins 甚至可以在奴隶上触发另一个工作。然后,如果我正确地解决了您的问题,那么您只需要类似的东西。 https://wiki.jenkins-ci.org/display/JENKINS/Parameterized+Remote+Trigger+Plugin

您可以通过名称触发器构建您的工作。还有另一个有用的插件叫做 artifactory。这可以管理您的包裹和服务。这意味着,您可以一次构建代码并共享给从属,从属可以访问您的构建和运行作业。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-09-03
    • 1970-01-01
    • 2019-04-25
    • 1970-01-01
    • 2017-12-31
    • 2014-06-07
    • 1970-01-01
    • 2019-11-04
    相关资源
    最近更新 更多