[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构建 ...
随机推荐
- Java关键字this与super
this有两个用途: 1.引用隐式参数(出现在方法名前的参数,显示参数是出现在方法名后位于括号里的参数,如:e.raiseSalary(10%),e是隐式参数,10%是显示参数):这里比较常见.形式如 ...
- 迭代加深搜索 C++解题报告 :[SCOI2005]骑士精神
题目 此题根据题目可知是迭代加深搜索. 首先应该枚举空格的位置,让空格像一个马一样移动. 但迭代加深搜索之后时间复杂度还是非常的高,根本过不了题. 感觉也想不出什么减枝,于是便要用到了乐观估计函数(O ...
- hprose for php
1.客户端和服务器简单DEMO 通过工厂方法 create 创建客户端 $client = \Hprose\Client::create($uriList = null[, $async = true ...
- POJ2947-Widget Factory
工厂里每件期间的生产时间为3-9天,告诉你有N个器件和M个计划,每个计划都是说明生产1-N号器件的时间,最后问你每件器件的生产时间.或者多解或没有解. 例如样例 2 3 2 MON THU 1 2 3 ...
- eclipse和sublime3打开freemarker(.ftl)文件
1.eclipse如何打开freemarker? https://jingyan.baidu.com/article/49ad8bce5ea95d5834d8fa9e.html 2.sublime3如 ...
- 对状压dp的一点理解
此dp可以理解为最暴力的dp,因为他需要遍历每个状态,所以将会出现2^n的情况数量,所以明显的标志就是数据不能太多(好像是<=15?),然后遍历所有状态的姿势就是用二进制来表示,01串,1表示 ...
- Metasploit漏洞的利用
- pytorch 损失函数
pytorch损失函数: http://blog.csdn.net/zhangxb35/article/details/72464152?utm_source=itdadao&utm_medi ...
- nginx三种安装方法(转载)
Nginx是一款轻量级的网页服务器.反向代理服务器.相较于Apache.lighttpd具有占有内存少,稳定性高等优势.它最常的用途是提供反向代理服务. 1.安装包编译安装 2.yum源安装 3.使用 ...
- 管道/FIFO
管道: #include<stdio.h> #include<unistd.h> #include<stdlib.h> #include<string.h&g ...