akring
V2EX  ›  问与答

iOS 持续集成服务器的疑惑

  •  
  •   akring · Aug 1, 2016 · 3942 views
    This topic created in 3747 days ago, the information mentioned may be changed or developed.

    iOS/macOS 开发使用 Jenkins 的话需要 Xcode 做构建,所以 CI 服务器必须是 macOS ,因此我的 Vultr 服务器是没法用了。

    家中有一台 Mac mini ,但是因为家里的网络是家用的电信宽带, ip 好像不固定的样子,因此无法做 Github 的 hook ,实现提交后自动编译集成。

    所以问题可以归纳为:

    1. 是否有支持 iOS 的第三方 CI 服务平台?

    2. 家里的 Mac Mini 还有办法用作 CI 服务器吗?

    13 replies  •  2016-08-01 22:07:48 +08:00
    macOS
    macOS
    Aug 1, 2016
    2
    Travis CI
    akring
    akring
    OP
    Aug 1, 2016
    3
    @macOS 貌似私有仓库需要收费?而且还不便宜。。。
    finian
    finian
    Aug 1, 2016
    4
    国内的暂时没找到,国外的有这些:
    - https://www.bitrise.io
    - https://greenhouseci.com
    xi_lin
    xi_lin
    Aug 1, 2016
    5
    ip 的问题绑个花生壳之类的东西来个域名就行
    BOYPT
    BOYPT
    Aug 1, 2016
    6
    跑个 ngork 映射出去外网就可以啦。
    akring
    akring
    OP
    Aug 1, 2016
    7
    @finian 我去看看,非常感谢!

    @xi_lin
    @BOYPT 谢谢,我回去研究下,还是想用 Jenkins
    targz
    targz
    Aug 1, 2016
    8
    我们目前的思路是这样的, jenkins 每 5 分钟检查一次分支情况,如果有新提交,就 build 一次
    targz
    targz
    Aug 1, 2016
    9
    append: 刚才手抖发出去了。
    build 完了,会更新版本号。这个提交的 commit 固定为「版本更新至 v...」这样
    然后 jenkins 检查到的时候,发起 fastlane 打包任务。
    在 fastlane 任务中,检查上一个 commit 的内容。如果非「版本更新」则 build,否则结束任务,以防进入 build 循环
    akring
    akring
    OP
    Aug 1, 2016
    10
    @targz 这工作流略复杂额
    targz
    targz
    Aug 1, 2016 via iPhone
    11
    因为我们的 mini 跑在内网服务器上,所以才这么搞,看着复杂罢了,保证流程清晰就行了。主要流程都在 fastfile 里
    kukat
    kukat
    Aug 1, 2016
    12
    你这种情况完全可以用 buildkite
    Sunnyyoung
    Sunnyyoung
    Aug 1, 2016 via iPhone
    13
    buddybuild
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1415 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 18:49 · PVG 02:49 · LAX 10:49 · JFK 13:49
    ♥ Do have faith in what you're doing.