【问题标题】:Cross-platform Hosted Continuous Integration跨平台托管持续集成
【发布时间】:2015-03-05 22:54:47
【问题描述】:

是否有任何现有平台可用于与 Linux + OSX + Windows 构建的跨平台托管持续集成?

我正在寻找的工作流程是:

  1. 我提交到 GitHub,或合并 PR。
  2. 使用一组配置脚本,项目在Linux、Windows和OSX机器上进行编译和测试。
  3. 如果一切顺利,工件会上传到 S3 或其他东西,并向 github 状态 API 发送 ping。
  4. 整个事情都在云中运行,因此我不必管理基础架构。
  5. 定价结构要么对开源免费(无可匹敌),要么价格适中,可供中小型开源项目使用。
  6. 该平台不限于 Web 应用程序或脚本语言。在某些时候,我们需要编译一些 C/C++。

各种平台都处理这个问题的 linux 方面:TravisCI、CircleCI、CodeShip 等。我知道 AppveyorCI 是为 Windows 做的。

是否有供应商为所有三个平台托管 CI?

【问题讨论】:

  • 我已经在 jenkins 上做了很多。不过,我自己设置了这一切,我没有像您要求的那样使用“其他场外资源”

标签: linux windows macos continuous-integration build-automation


【解决方案1】:

它可以构建在 Jenkins 和 IaaS 提供商之上。

Jenkins 将负责轮询 GitHub(或从它接收提交后挂钩)并在从属节点上运行构建。您将需要三个从站,一个用于每个所需的平台(Linux、Windows 和 OSX)。它应该是一个基于开源的解决方案,因为 Jenkins、Linux 和 OSX 核心都是开源的(当然不是 Windows)。

使用托管 CI 服务 + 从属设备的 IaaS 提供商,可以将所有内容都放在云中。

您可以查看http://clinkerhq.com,它以实惠的价格提供 Jenkins 即服务和从节点。

免责声明:我参与了 ClinkerHQ。

【讨论】:

  • Bamboo 也可以用于这样的设置?我没有过多使用 Bamboo,因为我们有专门针对 iOS 应用程序的 CI/CD 服务 (bitrise.io),我们只需要支持 OS X 作为构建平台,但在我短暂的 Bamboo 实验中,似乎 Bamboo slaves 可以使用任何操作系统。我可能错了,我不确定 Bamboo 的托管版本是否支持 OS X slaves。
  • 如果这可以像 TravisCI 一样无缝,我想你会得到很多客户。
  • @amuniz,你们考虑过免费增值模式吗?对开源项目免费...如果是,请在 gmail.com 的 给我留言(如果是,我会大力宣传它!)
  • 提供的链接已失效。
【解决方案2】:

Binstar.org 正在提供一项(尚未测试的)CI 服务,它提供所有三个平台。但只有访问 Linux 是免费的。它由 Anaconda 的创建者提供,因此与 conda(-build) 和 binstar 上传紧密集成。

  1. 构建配置存储在 git 存储库中,因此应该在 push/pr 上触发构建。

  2. 编写一个 .binstar.yml 来指定如何为所有平台构建。 http://docs.binstar.org/build_config.html

  3. 该服务与 Binstar 紧密集成,但我想 S3 应该也可以。

  4. 是的,它是一项云服务。

  5. 组织访问所有平台的费用为 47 美元/月。个人账户 7 美元/平方米。

  6. 既然 conda build 要构建扩展,它应该提供 c/c++ 编译器。

【讨论】:

  • 我在您链接的页面上没有看到任何关于 OSX 的信息。而对于 Windows,在“Multiple build Matrices”下,它会显示“Windows 尚不可用”。
  • 在所述链接的平台部分,您可以指定您想要的所有平台。但你必须为此付出代价。试用一下会很棒。
  • 我不得不承认我引用了文档的草稿版本:docs.binstar.org/draft/build-config.html 所以这只是时间问题,直到它可用。
猜你喜欢
  • 1970-01-01
  • 2021-12-12
  • 1970-01-01
  • 2019-04-24
  • 1970-01-01
  • 2010-09-06
  • 2011-12-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多