美文网首页
搭建JENKINS+IOS持续集成遇到的坑与解决方案

搭建JENKINS+IOS持续集成遇到的坑与解决方案

作者: AmazingMasterYi | 来源:发表于2019-04-24 15:33 被阅读0次

    个人网站 搭建JENKINS+IOS持续集成遇到的坑与解决方案

    本文并不是jenkins安装使用教程,百度,Google已有相当多此类文章,有兴趣的朋友可自行搜索,本文只是记录笔者在安装与使用过程中踩过的坑。

    JDK版本兼容

    搭建Java环境与安装Jenkins的时候要注意当前Jenkins版本支持的JDK版本,笔者一开始下载的是JDK12,结果搭建Jenkins的时候一直提示无法连接localhost,排查很久才发现是JDK12不兼容当前Jenkins版本。
    于是从头再来

    插件无法安装

    在成功连接localhost:8080并且成功输入密码之后会提示安装插件,笔者在这一步会一直提示无法找到某个文件

    DraggedImage.1b2e659dcd454fa6b7d2e8ca87c0b725.png

    在尝试网上各种解决教程之后依然无法解决,这里笔者选择了不安装任何插件直接进入下一步,居然成功了!

    当然后续需要在系统设置的插件管理中把常用的插件手动安装一下。

    文件夹位置

    在诸多教程中,会要求在~/Library/Keychains复制文件到到jenkins所在文件夹中,不同的教程可能所要求复制的位置不同,着实让人困惑,那复制在不同的位置这有影响吗?

    没有。其实Jenkins是用在我们的电脑中创建了一个新用户,复制KeyChains只是让Jenkins这个用户享有与原本用户的一样钥匙串而已。

    记得在系统设置中的Keychains and Provisioning Profiles Management中上传keychain文件即可。 不然项目编译时会提示找不到证书。

    XCODE INTEGRATION

    如果Xcode已经升级到9以上,那么关于在Jenkins中使用Xcode插件构建的步骤教程都可忽略。
    一致使用shell脚本自动打包。

    XCODEBUILD

    关于Xcodebuild的教程网上也有很多。笔者在使用shell脚本自动打包的时候,发现在外部使用脚本可以打包成功,在Jenkins中会报错,其中报错为

    app: errSecInternalComponent
    Command /usr/bin/codesign failed with exit code 1
    
    ** BUILD FAILED **
    

    搜索了一些教程后找到解决方案:
    在build之前加上以下一段脚本

    security unlock-keychain -p "login pwd" ~/Library/Keychains/login.keychain
    

    权限问题

    如果提示报错权限问题,可以打开文件夹所在位置,修改其文件夹管理者读写权限。


    DraggedImage.9500e384fd3f443b9bee4d7e39d4a62e.png

    总结

    如同网上所说,搭建Jenkins与技术没有直接联系,它更需要你耐心地了解每个步骤,冷静地解决问题与反复的尝试

    终于在搭建了55次之后成功了!

    相关文章

      网友评论

          本文标题:搭建JENKINS+IOS持续集成遇到的坑与解决方案

          本文链接:https://www.haomeiwen.com/subject/hwuggqtx.html