[Jenkins]IOS构建机配置记录
-------------------
如需转载,请注明出处
-------------------
随着业务量和开发人员的递增,IOS构建每天都会排队,影响研发效率。随购买了新的垃圾桶,进行配置。
一、 Mac远程管理
设置-节能,设置成以下状态,确保垃圾桶放入机房后,能随时远程调试。

二、打开共享
选中“远程管理”和“远程登录”,允许访问处设置特定用户(比如有权限登录这台机器的账户)。

三、Git环境配置
默认自带git,只需要生成SSH Key,并添加到gitlab的SSH key下即可。
1. git自带的帮助文档已经写明了如何生成。

命令如下:一路回车即可。
localhost:~ qa$ ssh-keygen -t rsa -C "feedback@xxx.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/qa/.ssh/id_rsa):
Created directory '/Users/qa/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/qa/.ssh/id_rsa.
Your public key has been saved in /Users/qa/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:Gi1bWwlpr2hr2MBKCnD0FjW+Y4+iHMHSzbeLQ1gmHTY feedback@xxx.com
The key's randomart image is:
+---[RSA 2048]----+
| .o |
| . E. . . |
| . + +. + |
|.ooo* + o . |
|o.+Bo B S + |
|..o.+o % + |
|.o.o.+B + |
|...oo+oo |
| o .oo |
+----[SHA256]-----+
2. 进入ssh文件夹,复制公钥到gitlab
cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCxLc+8YucHmXMuVYSh2pG7EYOTZaAidLlsWql9yv1QTXIpG6gcFlFT95iYZjsZBH678mN66xgu+Oz1MV+RCrO1XqV4/rLcjgGCmmPGPINIPy/+s5oJD5qfyQprJMniiiLiv13SaOY1GmsOfN2IXHABQNK+qAxdPAp2rnY7rg8IWrltNfG6qdeL/Emlpg9hZwJ6nQZj2kU4Vbqd0xzzXuUgBRd+amDhgta5VtRYtpUqilQISjTbC1xIBOoMtrlkpEl+9YKbc0JNjPzL7iJjrpZb2Z4LB4fZW+nb feedback@xxxx.com
添加到这里

3. clone gitlab里的项目,第一次需添加到key fingerprint到known hosts里。
localhost: qa$ git clone git@git.xxx.com:ios/xxx-ios.git
Cloning into 'xxx-ios'...
The authenticity of host 'git.xxx.com (10.10.130.xx)' can't be established.
ECDSA key fingerprint is SHA256:Vc52E7NVq6CODfO8mVMtNhv7Tkv86LZ86666666.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'git.xxxx.com,10.10.130.xx' (ECDSA) to the list of known hosts.
remote: Counting objects: , done.
remote: Compressing objects: % (/), done.
remote: Total (delta ), reused (delta )
Receiving objects: % (/), 926.49 MiB | 731.00 KiB/s, done.
Resolving deltas: % (/), done.
Checking out files: % (/), done.
格式如下:
localhost:~ qa$ cat ~/.ssh/known_hosts
git.xxxxx.com,10.10.130.xx ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGZgdcSEtfhdP83mlq1WOUlByl5zT4Mxn2SrH/EydDTO32reFKwUgAVOnHC0qVXIpp1Cup//lalalalal
四、安装Xcode
1. 可通过Apple store安装最新版xcode。
若需要老版本xcode可登录http://developer.apple.com/download/more进行下载。
比方说,我需要下载xcode9.2。

2. 安装完成后Enable 开发者模式

3. 登录账号
Xcode - Preferences -Account 登录账号
4. 从其他构建机器导出证书并安装
因为证书是从官网申请的唯一证书,若在此机器上生成新的证书,将无法进行构建

安装

再次构建后,成功,cheers~
[Jenkins]IOS构建机配置记录的更多相关文章
- jenkins的构建项目配置
继http://www.cnblogs.com/yajing-zh/p/5109517.html搭建好jenkins系统配置之后,新建jenkins构建项目,用于自动化构建. 点击Jenkins界面左 ...
- Jenkins之构建触发器配置(转载)
构建触发器配置,当你在文本框中输入配置的时间后,文本框下方会有时间解释,这样可以很好的看到自己配置的时间对不对. 可以清晰看到我的配置第一个运行时间是周五上午10点执行,第二次是星期六上午10点. ...
- elixir jenkins 集成构建方式配置
备注: 主要问题是环境变量配置的问题,解决方法是使用软连接进行解决 1. 下载软件包 wget https://github.com/elixir-lang/elixir/releases/ ...
- jenkins配置记录(2)--代码发布流程
在我们的日常运维工作中,使用jenkins来完成业务代码发版上线是至关重要的一环.前面已经提到在jenkins上添加用户权限的操作,今天重点说下如何在jenkins下构建项目工程进行代码发布? 在此简 ...
- Jenkins操作学习 --邮箱配置及测试结果构建
前言 使用jenkins做持续集成工具,构建的整个过程中,肯定要对结果进行记录和跟踪,这里我们以qq邮箱为例,来讲解如何配置jenkins的邮箱及发送构建结果 一.明确邮箱服务器相关信息 这里我们,要 ...
- 友盟iOS推送配置(从真机调试到推送)
下面我来讲解一下友盟iOS的推送配置,其实友盟只是一个示例,换做其余的第三方推送服务也会适用,只是第三方的后面服务变了而已. iOS推送(包括真机调试)所需要的步骤和文件如下: 备注:这里我将省略掉一 ...
- Jenkins自动化构建配置
写在前头 我每次修改代码一点东西,都要进行一个重新发布.重新发布的流程大概如下: 将最新代码同步上传到git上面 Maven打包 mvn clean install 将最新的jar包上传到服务器上面, ...
- 六、配置github的pull request触发jenkins自动构建
之前的配置,都是向master分支push操作触发jenkins进行构建,但是在一般的正常工作中,不会允许程序员直接向主分支推送代码:正常都是fork一个本地的分支,在本地分支调试完后,向主干分支提交 ...
- 五、配置jenkins定时构建或上游job触发构建
我们之前说的都是通过检测github是否有push动作,即代码是否有更新,一旦检测到push动作就出发jenkins构建: 但是除了这种方式,我们可能还会需要定时进行构建,比如在每天的凌晨1:00构建 ...
随机推荐
- Spring Ioc 常用注解
在开发中spring ioc的配置方式有多种方式,常用的一般都是byName.byType .以及其自动装配可以查看http://www.cnblogs.com/gubai/p/9140840.htm ...
- String Match
Finding length of longest common substring /*Finding length of longest common substring using DP * * ...
- maven学习四:maven集成jetty插件发布web项目 标签: maven
http://blog.csdn.net/u014079773/article/details/50167833
- JS-MD5加密
首先,下载MD5文件压缩包 点击下载MD5压缩包 然后,在需要加密的页面引用MD5脚本文件 <script src="js/md5.js" type="text/j ...
- Python中利用进度条求圆周率
从祖冲之到现在,圆周率的发展越来越丰富,求法也是越来越快其中: 1.求圆周率的方法: (1)蒙特卡罗法 这是基于“随机数”的算法,通过计算落在单位圆内的点与正方形内的比值来求圆周率PI. 如果一共投入 ...
- Linux---基础指令(一)
https://www.linuxprobe.com/chapter-02.html (Linux就要这么学) 一.执行查看帮助命令 date:date命令用于显示及设置系统的时间或日期,格式为“d ...
- 破解某普通话测试app会员
设备要求 已root的Android手机 软件要求 反编译工具 jeb.APK改之理(APK IDE) hook工具 frida.xposed. 布局分析工具 Android Device Monit ...
- css3用到知识点小结
属性 默认值 属性值及其描述 animation-name 默认值:none 规定需要绑定到选择器的 keyframe 名称. keyframename 规定需要绑定到选择器的 keyframe 的名 ...
- Java时间日期格式转换 转自:http://www.cnblogs.com/edwardlauxh/archive/2010/03/21/1918615.html
Java时间格式转换大全 import java.text.*; import java.util.Calendar; public class VeDate { /** * 获取现在时间 * * @ ...
- 自由拖拽DIV实现
最近在做的项目有个效果是要实现div随意拖拽改变大小,前端框架选择的是vue.js,UI用的是element,拖拽效果可以很简单的实现,但是在拖拽过程中发现会对其他元素实现全选效果,因此最后选择使用元 ...