Jenkins平台搭建的坑 iOS

537 阅读2分钟

最近几天都在弄这个,踩坑好多,记一下坑。。。详细教程可参见  

http://xuanyiliu.com/2016/09/22/Jenkins+GitHub+Xcode+fir/

写的很好,不想再重复, 首先是Jenkins的下载安装,之前直接下载的macOS的包,然后直接无脑安装,导致后面运行Jenkins平台,配置git地址时出现权限问题,始终没通过验证,后面查明是用macOS包安装时系统会自动创建一个jenkins的用户,导致权限问题,解决方法就是安装时自定义是否创建jenkins用户


当时找到的解决方法采用的是将war文件放到容器中进行安装,我就直接卸载了平台,下载的jenkins.war包,然后下载的tomcat, 到apache官方主页下载 Mac 版本的完整 tar.gz文件包。解压拷贝所有文件到 /Users/zypsusu/jenkins/tomcat_jenkins目录下,其他目录也可。修改目录权限,到终端输入sudo chmod 755 /Users/zypsusu/jenkins/tomcat_jenkins/bin/*.sh,然后去文件夹bin中修改setenv.sh中设置的路径,export JENKINS_HOME=/Users/zypsusu/Work/Dev/jenkins,这个是自己创建的tomcat工作路径,可以随你自己设置,千万不要复制了不改掉zypsusu,然后将jenkins.war放到/Users/zypsusu/jenkins/tomcat_jenkins的webapp目录下面就行,最后启动Tomcat,并一起安装Jenkins

sudo sh startup.sh

若出现如下提示则表示安装并运行成功:

Using CATALINA_BASE: /Users/zypsusu/jenkins/tomcat_jenkins
Using CATALINA_HOME: /Users/zypsusu/jenkins/tomcat_jenkins
Using CATALINA_TMPDIR: /Users/zypsusu/jenkins/tomcat_jenkins/temp
Using JRE_HOME: /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home

如果注意文件夹的话,会看到tomcat工作路径下生成了许多文件,其中就有jenkins的验证安装密码initialAdminPassword, 打开浏览器,输入 http://localhost:8080/

回车之后如果看到jenkins正在启动,表示正在安装,然后会要求输入验证密码,这是可以将上面initialAdminPassword文件里的密码输入进去,进行jenkins的安装。

也可以使用brew安装tomcat(没有尝试)

安装完成jenkins后,新建一个自由风格的工程,然后进行项目的配置,这里因为解决了权限问题,所以直接输入git地址就行也不需要再去配置用户或者ssh去验证git权限,然后就是一些配置,这里可以查看上面的链接,跟着配置,值得一说的是 这里的${WORKSPACE}默认代表的是包含项目的路径,可以查看tomcat的文件夹来确定路径,我这里是/Users/zypsusu/Work/Dev/jenkins/workspace/TuoDao。 至于证书的配置,刚开始我也是配置证书的,后来在不断构建中因为这个报错,因为用的是xcode8,选择的是自动选择证书,所以为了保持和xcode一致,证书和描述文件这两项就清空了。其他也没啥说的,不断配置,不断构建,然后根据系统logo改错,我也是在构建了22次都失败以后才构建成功的。

构建后的操作,当然是执行shell进行上传,我这里是上传到fir,所以在下载了上传插件后执行 fir p ${WORKSPACE}/archive/tuodao.ipa -T #firim_token

个人感觉jenkins配置还是比较繁琐的,然后我也只是直接配置来构建产生ipa,上传ipa,并没有直接使用脚本,在这之前是装了matt大神的shenzhen这个ruby源来产生ipa,现在这个源也不维护了,只能产生ipa,不能上传到fir,就折腾jenkins,现在是基本能一键直接打包上传到fir了,省点事了,折腾中知道了fastlane,之后会去琢磨下,好像这个比较大众好用。如果有fastlane比较好的文章,希望也能推荐给我。

我的具体配置如下: